4 ms·
I built a memory dump system of my own for the TRS-80. The reset button on the machine launched an RST operation on the Z80 CPU, which was the only non-maskable
by Starwatcher2001 8y ago
I built a memory dump system of my own for the TRS-80. The reset button on the machine launched an RST operation on the Z80 CPU, which was the only non-maskable interrupt (in other words, software writers couldn't disable or prevent it).
Unfortunately due to the memory mapping of the TRS-80, this set the CPU to an address in ROM, meaning I couldn't get at it to do anything useful. I put together a small veroboard circuit with a 2716 EPROM and a nand gate or two. This was hacked into the memory decoding circuit on the TRS-80 so that in normal operation the original ROM would be called, but if the address range was in the first 2k (the smallest block I could map), it would take instructions from the EPROM.
A friend then hand copied the entire first 2k of memory from the ROM (in hex) and cooked it into the EPROM (funnily enough using an Apple). However, we modified the code around the RST instruction to leap to RAM, where the memory dump program could reside and then be executed.
As the machine couldn't reboot properly until our dump software was loaded, we added a toggle switch to enable/disable the memory mapping hack and return the machine to normal.
Presumably like the "Wild Card" did it, we dumped the memory and register contents so they could reloaded later. Fun times.