S100 Computers

Home S-100 Boards History New Boards Software Boards For Sale
Forum Other Web Sites Quiz Index    
  
An S-100 VGA Video Board.
  
Many S-100 board manufactures had their own Video boards.  Most initially were character based "video TTY's". The very early ones were restricted to 64 characters/line (for example the SSM board) but soon 80 characters per line became common.  A good example is the SD Systems 8024 Board.

As time went on, boards started to get more sophisticated and began to offer fairly high resolution graphics capabilities.  A good example of this would be the Matrox ALT512 board which offered color graphics at a 512 X 256 resolution. There were even a few of higher resolution.  The NEC 7220 based video controller boards for example, which brought video display graphics to a new level. That chip was the NVIDEA chip of its day back in the early 1980's.

Once the IBM PC appeared on the scene video hardware compatibility with it became key.   There were a few S-100 bus attempts to make equivalent cards. The Lomas "Color Magic" IBM-PC Color Graphics Adaptor (CGA) look-alike probably being the most successful.  However with the phasing out of the S-100 bus in the late 1980's, no higher resolution S-100 video boards were ever produced. 

On the IBM-PC side of things (and its clones), video boards of increasing resolution appeared, eventually culminating in "VGA" boards. At the same time a very long list of "all in one" PC video chips were developed. The firm Chips and Technologies was the first company (outside of IBM) to deliver a compatible VGA chipset, the 82C451. This market was then entered into by companies such as Trident Microsystems, Western Digital, Cirrus Logic, Oak Technologies, and others, until it was saturated.  None of them exist today, nevertheless they started a whole industry of powerful all in one video chips.   With one chip,  a little DRAM and a ROM a complete video board could be constructed with outstanding capabilities.

With the recent of our re-introduction introduction of 16 bit 8086 based S-100 boards and MS-DOS based operating systems there is a clear need for a good high resolution VGA style video board.  The specifications of a VGA board is beyond the capability of discrete 74LSxx based TTL chips.   This is the job of a dedicated "Video Controller Chip".  What chip should one use ? There are a number of candidates.  In the end I settled for the Cirrus Logic GD5420.  Major points in its favor were SVGA resolution, an onboard DAC, an excellent manual describing the chip and reasonable availability.  The only catch is that it only exists in a 164 pin surface mount version -- as do all these video chips.Chip Carrier

After some further researching I found that one can easily get a custom board made for chips like this and have it custom soldered to a board with regular 0.1" centers. Here is a picture of such a board. A number of companies make these "adaptor boards" and provide solder capabilities.   I got mine done by a Canadian group called Proto-Advantage.  The GD5420 chips themselves are often available on eBay. Fortunately the GD5420 was used in many ISA bus PC video boards of the time. These are almost always available on eBay.  If you don't mind trashing a board, it can be easily popped one from a board with a heat gun on the back of a board.  

Interfacing the chip to the S-100 bus at first looks quite simple but unfortunately it's not! The GD5420 is setup to directly interface with the PC ISA bus with no need for buffers or drivers.  Unfortunately this will not work on the 8/16 bit wide S-100 bus.  If we could guarantee the bus CPU would only send/receive 16 bit wide data it would be easy but unfortunately VGA based software will often send and receive 8 bit wide data as well.  In this case the S-100 bus goes through a rearrangement with separate 8 bit data in and out lines. See here for a detail description of this.  

What this means is that we have to trap on the board memory and I/O addresses that are relevant to the GD5420 chip and present them in a format that is ISA bus "like".    Very fortunate for us is the fact that the chip has two pins MCS16* and IOCS16* that go low whenever the chip sees a RAM or an IO port address that is meant for it.   ALL other addresses are ignored.  This is the trick we will build this boards interface around.   The schematic for this board is shown here.   Here is a picture of this first prototype board:-
  
  First VGA Prototype Board
    
In a typical IBM-PC,  the video BIOS for the VGA board is at C000:0H to C000:7FFFH.   If we display RAM in this region on this board pin 2 of the GD-5420 chip (EROM*) will go low. This activates the two onboard EEPROMS and their 74LS245 drivers.  The fairly complex circuit on the right of the schematic (U11, U12, U14, U10 etc) is to take care of the S-100 bus 8 and 16 bit data capabilities.  This circuit is discussed in detail for our 4Mg RAM board.

So far so good. However when I went to utilize the GD-5420 I/O ports the IOCS16* pin did not go low!   After a few frustrating days I realized that the chip must first be "activated" by a few handshake signals to ports 102H, and 46E8H.  We now have a chicken and egg situation because I cannot get to these ports unless IOCS16* goes low and these port addresses will not be seen/acknowledged by the chip unless it is activated!

The net result of all this is that I have to do a second prototype board where in hardware I "carve out" the GD-5420 ports allowing them to interact with the chip in a ISA bus manner and interfacing the data to/from the chip with the S-100 bus.  Here is the more elaborate schematic required.


A Second Prototype Board
The second VGA S-100 video board has circuitry to recognize I/O ports 3BDH-3DFH, 102H, 46EBH such that if these ports are accessed (read or write) the bus drivers are activated allowing communication with the Cirrus chip.  Here is a picture of this second board:-

VGA Prototype-2
 
As you can see there were still problems with the board. The port addressing circuit had to be combined with the S-100 status signals sINP or sOUT. This was accomplished with a 74LS00 shown in the patch area shown above. 

Unfortunately I still have problems with the board/circuit. For some reason Cirrus chip is not active (at least there is no DRAM refreshing or H & V sync signals. Stay tuned.




MOST CURRENT VGA BOARD SCHEMATIC  (V2  1/14/2012)
MOST CURRENT VGA  BOARD LAYOUT  (V2  1/14/2012)

 


Other pages describing my S-100 hardware and software.
Please click here to continue...

This page was last modified on 02/06/2012