SidecarTridge ROM Emulator pinout diagram

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

Guide

📘 Introduction

Overview, capabilities, and when to use the ROM Emulator.

Guide

🚀 Getting Started

Connect, power, mount USB storage, and load your first ROM image.

Reference

🧱 Bus Protocol & Timing Diagrams

Signal-level emulation explained with WaveDrom: CS#, OE#, WE#, address/data timing, and wait-states.


Table of contents