SidecarTridge ROM Emulator
Programmable 512 KB ROM emulator for 8/16-bit data buses with dynamic speed selection
The SidecarTridge ROM Emulator is a versatile tool for developers and hobbyists who need to emulate ROMs across different systems. Compatible with the 27C/28C EPROM and EEPROM series, it lets you load binary images and switch between ROMs effortlessly.
The SidecarTridge ROM Emulator is a module intended for developers, builders, and hardware makers to integrate into their projects. It is not a standalone consumer product and requires host hardware to function.
Why choose SidecarTridge ROM Emulator?
- Versatile ROM emulation – Load binary images from 4 KB to 512 KB, in 8- or 16-bit width, with selectable bus-speed grades.
- Compact design – Fits common enclosures and integrates easily.
- USB connectivity – Transfer images on Windows, macOS, and Linux.
- API support – Control the emulator from the host via a simple API.
Key features
- Bit-banged emulation – Uses RP2350 PIO to emulate ROMs at the signal level.
- Multi-image storage – Up to 64 images in 16 MB flash; no physical swaps.
- Simple management – Manage images via API calls from the host.
How it works
- Signal-accurate PIO – Drives address, data, and control lines to mimic ROM/EEPROM/Flash devices.
- Flash storage as USB MSC – 16 MB non-volatile flash exposed as a FAT12 USB mass-storage volume.
- Hot swapping – Image switching can be triggered by reads to specific addresses; no power-cycle required.
Perfect for makers
Ideal for makers, developers, and hobbyists—especially when emulating ROMs for vintage computers.
At a glance (hardware)
- 55 mm × 25 mm compact PCB
- Single-side PCB
- Castellated edges + mounting holes
- USB-C connector
- DEBUG/UART JST (optional)
- Dual power inputs (USB or external)
- 5 V supply
- 5 V & TTL logic levels
Table of Contents
Reference
🧱 Bus Protocol & Timing Diagrams
Signal-level emulation explained with WaveDrom: CS#, OE#, WE#, address/data timing, and wait-states.