One Rom

£10.00

One ROM is the most flexible ROM replacement for your retro systems.

Choose between 24, 28, 32 and 40 pin versions and either pins unsoldered (a kit to solder yourself) or soldered (pins all pre-soldered). 

Out of stock

One ROMs have been tested successfully on many types of systems including:

  • Acorn Electron
  • BBC Micro and Master
  • Commodore 64
  • Commodore VIC-20
  • Commodore PET
  • Commodore 1541 disk drive
  • Commodore IEEE disk drives (those that work with the PET)
  • Commodore 128
  • Atari 800
  • TI-99
  • Tandy 4P
  • PC XT
  • Apple II
  • Amiga A500
  • Amiga A500++
  • Amiga A3000
  • RC2014
  • ZX-81
  • Sinclair QL
  • …

And many more!

Pins Unsoldered

If you choose the “pins unsoldered” option then you will receive:

  1. One or two strips of gold-coloured, round, male pins.
  2. A 2×5 male header consisting of square pins.

The round pins are to be installed as One ROM’s “legs”, for insertion into your retro system. They should be soldered coming out of the underside of one ROM – the microcontroller and other components are designed to be on top.

We have chosen round pins for One ROM’s legs, as they are less harsh on original ROM sockets than the more common square pins. However, repeated or forced insertion may damage original ROM sockets, or the pins.

We supply these round pins as one or two strips. You will need to cut off the required number of pins from the strip(s) before soldering using a pair of side cutters. We supply the pins with spare pins provided, as these pins are delicate, and the end pins can sometimes become damaged during shipping. If this happens, just snip off the damaged pins and discard them, and solder unbent pins to One ROM. It is recommended to install the pins into a breadboard, with the correct spacing, before soldering to One ROM, so they are perpendicular to One ROM.

The 2×5 header is designed to be located coming out of the top side of One ROM, next to pin 1. Again, it is recommended to install the pins into a breadboard, before soldering to One ROM, so they end up perpendicular.

You only need to solder the 2×5 header if you wish to use One ROM’s image select, dynamic bank switching or multi-ROM features (or potentially other functions in future), or the SWD debug pins. If you just wish to serve a single ROM you do not need to install these pins.

Occasionally, we may substitute other types of pins for the above, depending on availability. For example, we may supply 2 1×5 headers to replace the 2×5 header. In all cases, they will allow for a functionally equivalent final product.

Take care while soldering. Due to the constrained space on a One ROM, the pins are located very close to some components. Keep your soldering iron and molten solder away from all other components, so you don’t accidentally bridge or otherwise damage those components.

Pins Soldered

if you choose the “pins soldered” option, then your One ROM will have the legs and all header pins pre-soldered.

We do this by hand, on demand, so it may lead to a slight delay shipping your order. One ROMs are thoroughly cleaned after soldering using an ultra-sonic cleaner with a 99% IPA bath, and then dried before being re-tested, packaged and shipped.

Programming

One ROMs are shipped with a test pattern ROMs installed, but can be reprogrammed to serve any ROM image for a supported ROM type, including the original ROM’s specific mask programmed chip select behaviour. Visit https://onerom.org for programming tools.

Specifications

  • MCU: RP2354A, RP2354B or (at our option) RP2350B
  • Flash: 2MB flash, either on board the RP2354A/B, or as a separate chip alongside the RP2350B
    • 40-L has 4MB flash, using an RP2354B (2MB) and separate 2MB flash.
  • Approximate dimensions: 19mm wide, variable length based on model
  • USB: USB-C (cable not supplied)
  • Pin Pitch: 0.6″/15.24mm between rows of legs, 0.1″/2.54mm between pins
  • Hardware Revision: 24F (RGB), 28C (RGB USB-C flat), 28D (USB-C upright), 32B (RGB), 40B (RGB), 40A (Original)
  • Programming: USB and SWD
  • Status LED: Red, on all models
  • RGB LED: Provided where variant name indicates RGB support

All dimensions +/- 5%.

We may substitute any model with a more recent model of that same variant, guaranteed to support at least as much functionality as the model listed above.

Testing

All One ROMs are tested by us before shipping by

  • programming them with the latest released One ROM firmware version and a test pattern ROM image
  • attaching them to a test jig, and reading that they serve the ROM without error.

Applications

One ROM was developed for hobbyists and enthusiasts to replace ROMs in retro systems, including systems where original ROMs are now unobtainable, or prohibitively expensive.

One ROM may be compatible with other types of systems, but is not recommended for automotive, aeronautical, aerospace, marine, military, healthcare, nuclear, industrial or any life or safety critical applications. Use in any such system is entirely at your own risk.

Replacing ROMs in a retro system requires some skill, and it is possible to damage your system or your One ROM if done incorrectly. Only purchase a One ROM if you are comfortable you are capable of replacing your ROMs safely.

Similarly, some soldering experience and equipment is required to solder the pins yourself, due to the proximity of components on One ROM. Only purchase the “unsoldered” option if you are comfortable you have the soldering equipment and skill to solder the pins safely.

One ROM Introduction

One ROM was developed to be the most flexible ROM replacement for retro systems.

You are welcome (in fact encouraged!) to have your own One ROMs manufactured – all of the hardware files are open source, and available on the github project page. You can even modify the designs and sell them for profit if you wish.

  • Supports PETs, VIC-20s, C64s, 1541s, IEEE drives, TI-99, Coco2, etc.
  • Same footprint as original ROMs – doesn’t overhang the socket like other solutions.
  • Quick programming- just connect 3 wires and `make run`. Takes 5-10s to build and flash. No programming jigs necessary.
  • USB Version: No programmer required, just connect using a micro-USB cable (not supplied) to a PC/Mac/Linux/Android device and flash with Chrome or One ROM Studio.
  • Pro Version: Use a $5 programmer (e.g. Raspberry Pi Pico) – no expensive EEPROM programmer required.
  • Reflash in situ – no need to remove the ROM from the host when reprogramming.
  • Software configurable chip select behaviour – no hardware jumpers required.
  • Stores up to 16 ROM images of different sizes and chip select configurations. Image selectable via jumpers.
  • Replace multiple ROMs with one ROM – a single One ROM can replace up to 3 original ROMs at the same time e.g. all of C64 kernel, BASIC, character set.
  • Dynamic bank switching – switch between ROM images on the fly, e.g. different char ROMs.
  • Hackable at runtime – change the ROM images being served and access telemetry from the ROM at runtime using Airfrog or other SWD probes.
  • Images combined automatically – no need to manually build up your own larger PROM image containing multiple retro ROMs.
  • Open source software and hardware – make and flash your own One ROMs and modify the firmware.

See onerom.org for more information about One ROM.