Emulate ROMs at 12MHz With Pico2 PIO

Nothing lasts forever, and that includes the ROMs required to make a retrocomputer run. Even worse, what if youβre rolling your own firmware? Period-appropriate EPROMs and their programmers arenβt always cheap or easy to get a hold of these days. [Kyo-ta04] had that problem, and thanks to them, we now all have a solution: Pico2ROMEmu, a ROM emulator based on, you guessed it, the Raspberry Pi Pico2.

The ROM emulator has been tested at 10MHz with a Z80 processor and 12MHz with an MC68000. An interesting detail here is that rather than use the RP2350βs RISC-V or ARM cores, [kyo-ta04] is doing all the work using the chipβs powerful PIO. PIO means βprogrammable I/O,β and if you need a primer, check this out. Using PIO means the main core of the microcontroller neednβt be involved β and in this context, a faster ROM emulator.
Weβve seen ROM emulators before, of course β the OneROM comes to mind, which can also use the RP2350 and its PIOs. That project hasnβt been chasing these sorts of speeds as it is focused on older, slower machines. That may change in the newest revision. Itβs great to see another contender in this space, though, especially one to serve slightly higher-performance retrocomputers.Β Code and Gerbers for the Pico2RomeEMU are available on GitHub under an MIT license.
Thanks to [kyo-ta04] for the tip.
Β
Β