After building ZX Spectrum clone in CPLD I ported hardware code to another project and this is a bit simplier, but it uses some mono LCD from old copy mashine.
Now I used only one CPLD, but I added additional SRAM chip. Now I don’t need any memory managment (MMU)- video part of the computer is completelly “write only”. It is shadowed in external SRAM chip and if computer need to read some data it do not get date from video part of the computer. This makes design much easier to implement.
CPLD also monitors all IN/OUT operations and generates all specfic video signals for LCD (it is four pixels at a time interface).
This is 320×240 pixel monochromatic screen, without any gray levels. So I can not emulate any colors using grayscale. For border I used vertical stripes, but for screen part is “only black and any other color is white” mode. So games are unusable. Also, moving parts are blured.
All files to download:
Intel-Altera Quartus CPLD source code for ZX Spectrum LCD version.
Do not forget, that regular Z80 need 5Vpp clock for proper operation. I used CMOS buffer for this.
Ant here is pinout for EDMMPU3BDF LCD:
5. pix CLK
6. Vcc, +5V
8. Vee, -25V
9. D3, pixel data
13. Vee, same as 8.