Time Passes

A project log for FPGA Serial Terminal

Instant-on VT100-style serial terminal implemented in minimal FPGA board, with VGA display and PS/2 keyboard.

Howard JonesHoward Jones 01/13/2019 at 16:310 Comments

After a house move, and office remodel, I'm finally able to look at this project again!

I did get a cheap Cyclone IV dev board (much more blockram), with onboard RGB565 VGA connector, PS/2 keyboard etc, but then found that it has NO spare GPIO to use for a serial port!

I also have the Lattice MachXO3 eval board (very cheap, seems nice), but the Lattice software just doesn't work for me on two different Windows systems. The JTAG programmer can't perform a scan.

Somewhere in the last year or so, I did make a small break-out board, to try out JLCPCB and EasyEDA, for a VGA resistor DAC, MAX3241 and PS/2 keyboard connector. I have yet to test one of those - psyching myself up for SOIC soldering. 

On the VHDL side, I wanted to rework the VGA into a proper CRTC, like a 6845, with timing registers, and multiple clock dividers, to allow for various screen modes. The current VGA is all hardcoded for 800x600, which is not actually the right size for a true VGA text mode. Having a register file for the CRTC would allow the processor to change video modes too, much like a hardware system would. That would open up some potential weird retrocomputing possibilities, like Videotex, or maybe PLATO.

If I can get a working MachXO3, or back to the Cyclone II, the two immediate goals are serial from the MAX3241, and programmable video timings.