On 17 Jan 2012 at 19:34, Tony Duell wrote:
Since the read is totally asynchronous (and you
don't, in general, get
a read strobe on such keyboard interfaces), the RAM pretty much does
have to be dual-ported (or at least separate read and write ports,
with separate address lines).
Well, yes and no. Given the speed of a 4MHz Z80 and its timing, I
think it would be possible to slip in with even a low-end MCU to do
some updating after every line change. I also suspect that the TRS80
probably has some debouncing logic so that momentary glitches in the
state of a key isn't a big deal.
Or you could split a 512 byte SRAM and divide it into two pages,
always writing to one half and swapping pages after every keystroke.
Are small dual-porrted RAMs easy to obtain now?
IDT still offers small (1Kx8) async dual-ported 5V SRAMs. I suspect
that there are other suppliers as well.
In either case, the logic isn't complex.
--Chuck