Arne Thormodsen send me his solution for storing code in the MPF-1 memory in an EEPROM:
I recently purchased a original (3 x 24 socket) MPF-1. With less fiddling than I imagined I was able to hack in an EEPROM (Atmel AT28C64/X and compatible). Only 4K could be decoded at the socket due to the way the board was wired. The last 4K in the bottom page is reachable if you bring a wire around from the bottom, but this requires either another socket or “piggie-backing” chips.
The EEPROM requires both RD\ and WAIT\ to operate, but these are easily reachable on the top.
If you are interested I can send you a short writeup with some pictures. It’s kind of neat. Instead of using the tape cassette interface (ugh, I hated these in 1978 and I still hate them) a simple block copy is all that is needed. And if you stick ROM-able code in there it can run in place. But beware, the chip is only good for 10^4 writes so don’t accidentally treat it like regular RAM. It will look like it, slowly, for awhile, then die.
Finished it last night. I'll draw up a schematic when I get a chance. The key thing with this particular EEPROM is that the RD/ signal (not used in the memory section on the MPF-1) MUST be connected to OE/ on the chip, unlike normal RAM where a WR/ will override a OE/. This is to prevent spurious writes. Other than that hook the busy pin on the memory to BUSY/ on the CPU, and don't forget to add a pull-up resistor (like I did) because it's an open drain output. The write protect switch is not needed if you never make a mistake, so of course I added it.
2000-2fff is RAM, 3000-3fff is EEPROM, and you can do a full backup RAM - ROM using a move in < 1/2 sec.
Note that not all 8 kByte EEPROMs have a READY/BUSY* pin.
Last update: 2021-10-23