NOTE: EasyEDA shows the most recent WIP for this project, which might be part way through me making changes. Before using the PCB layout please do get in touch (comment or message) so I can let you know if what you're seeing is stable! I create labelled versions of the project, but EasyEDA doesn't allow me to publish a specific version :-(
An 8 Bit memory mapped, character based monochrome video card. Similar to many 70's and early 80's computers like the Commodore Pet, Sharp MZ80K and TRS80. Main features are:
I've discovered and used GALs rather extensively to do most of the decoding.
The board is designed to provide video output for my Z80 SBC design. As such it makes use of the 4MB address space provided by that card. The video memory maps into the top 16K page. 0-4K of that page is the character generator (256 characters, 16 bytes each) and 8K-12K is the video memory, of which the first 2,400 bytes are displayed (80x30 characters).
To make my life easier for my first foray into video cards I've used dual port memory. This is relatively expensive and low capacity but trying to get my head around bus arbitration logic while trying to understand how to generate a VGA signals and learn to use GALS was more than I wanted to deal with at the time.
I've used a 74597 shift register to generate the bit stream. This has the benefit of having a parallel latch independent of the shift register which would make bus arbitration much simpler. That's for a next version if I decide to tackle the more complex memory interface.
I've also included an 8 bit output and 8 bit input port on this card because I didn't have room on the CPU card for this. The port is there primarily in my mind to let be add a simple game keypad.
|4||Resistor SIL 4K7x8||RP4||SIL-9||1|
|11||Male Header 2.54mm||PWR1||2.54MM_HDR_2PIN||1|
|18||Oscillator 8/14 Pin Layout||OSC1||DIP14 - OSCILLATOR||1|