Skip to the content
PCBKitNew board
2 layers19.6 × 43.2 mmOpenRomSwitcher, the printed circuit board in 3D

Use bigger EPROMs to replace smaller ones with switchable images

Size
19.6 × 43.2 mm
Copper layers
2
Thickness
1.6 mm
Parts
10
Nets
31
Pads
72
Tracks, vias
125, 8
Pours
2
Routed
Yes
KiCad
KiCad 4
Created
20 Sep 2017
Updated
7 Jan 2018

Overview

OpenRomSwitcher is an open-source printed circuit board by SukkoPera, from the SukkoPera/OpenRomSwitcher repository on GitHub. It is a 2-layer board of 19.6 × 43.2 mm with 10 parts on 31 nets, routed with 125 tracks and 8 vias.

Its parts include 6 resistors, 2 ICs and 1 connector.

README

README.md

OpenRomSwitcher

OpenRomSwitcher is an Open Hardware adapter PCB that allows the use of a 27xxx EPROM in place of a smaller (E)PROM. This is useful, for instance, for replacing the KERNAL and other ROMs in Commodore 16 home computers.

Board

Summary

When installing JiffyDOS on a Commodore 16, you might want to retain the ability of switching to the original KERNAL ROM. The C16 ROM pinout is the same as a 27128 EPROM, so you can use a 27256 and put both the JiffyDOS and the original KERNAL on it. To you switch between them, you will need to either connect the A14 pin to VCC or GND.

OpenRomSwitcher comes as an adapter PCB that sits inbetween the original socket and the new chip and carries the A13-A15 pins out to solder pads where switches can be wired to allow the selection of a particular ROM.

Assembly

  1. Solder the 0805 SMD resistors first. My suggested technique is as follows: put a small blob of solder on one of the pads, then grab a resistor with tweezers, reheat the solder and slide the resistor into it, keeping it flat on the board. Hold it in place with your tweezers and take the iron away. If you didn't place it straight, reheat and correct with the tweezers. Finally solder the other end. It's not that hard, you just need to practice a few times.
  2. Put the pin headers into a solderless breadboard and lay the board on them, with the 0805 resistors facing down (i.e.: you should not see them). Make sure to use the two shortest hole series. Solder into place.
  3. Remove the board from the solderless breadboard. Using flush cutters, cut the top two pins on the right (on the soldering side) so that they are as flush to the board as possible. Repeat with the bottom two pins. Take the socket and do a test fit, it should sit flush to the board.
  4. Turn the board over and solder down the socket. Again, make sure it sits as flush as possible.
  5. You are done! Try to fit the adapter in the socket on your board or solder it down, if you prefer. In both cases, you can trim the pins shorter if you need.

Installation

Care is needed to select the proper values and placement of the resistors. You will have to choose on your own, depending on the EPROM, number of switches and exact pin connection of the original socket. Only one resistor must be soldered for each of the A13-A15 pins, either in the Switch or Straight position. This means you will ALWAYS need EXACTLY 3 resistors:

  • In case you want to connect an address pin straight to the original socket, solder a 0 ohm resistor in the Straight position.
  • In case you want to make an address pin switchable, solder a 10 kohm resistor to the Switch position. Note that probably any value between 5k and 50k will do.

OpenRomSwitcher has been kept as small as pratically possible, and thus it can usually be installed in the original ROM socket, with no need to desolder it.

To switch between ROMs, you will need one or more switches. Every switch must connect one of the A13-A15 pads to ground when enabled. A ground pad is available on the board, but any ground spot on the original board can be used as well, if easier to reach. Since having more than switch can be cumbersome, a rotary switch can be used as well.

IMPORTANT: ALWAYS TURN YOUR DEVICE OFF BEFORE MOVING THE ROM SELECTION SWITCH(ES).

Example

Reconsidering the initial example of a 27256 EEPROM in the C16, I would use the following resistors:

  • A13: A 0 ohm resistor in the Straight position, since C16 ROMs are 16 KB and thus the A13 line must be connected to the chip.
  • A14: A 10 kohm resistor in the Switch position.
  • A15: A 0 ohm resistor in the Straight position, since both 27128 and 27256 ROMs do not have an A15 pin and we can just connect that pin straight.

With this configuration a switch on the A14 pad that will allow switching between the ROMs.

License

OpenRomSwitcher is Open Hardware.

Thanks

The following links were useful during the development of this project:

Parts

10
QtyValueFootprintReferences
30RResistors_SMD:R_0805_HandSolderingR4, R5, R6
310kResistors_SMD:R_0805_HandSolderingR1, R2, R3
1CONN_01X04OpenRomSwitcher:LoosePads-4J1
1LOGOw_logo:Logo_copper_OSHW_6x6mmG***
1PLUGOpenRomSwitcher:DIP-28_W15.24mm-NoSilkSU1
1SOCKETOpenRomSwitcher:DIP-28_W15.24mm-NotchU2

Questions

How big is the OpenRomSwitcher PCB?

It measures 19.6 × 43.2 mm and has 2 copper layers, 1.6 mm thick.

What parts does the OpenRomSwitcher use?

10 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the OpenRomSwitcher KiCad files?

From the SukkoPera/OpenRomSwitcher repository on GitHub, at the commit this page was made from: the board is OpenRomSwitcher.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the OpenRomSwitcher design in my own project?

Its repository states no licence, so its author keeps all rights: ask SukkoPera before reusing the design.

Similar boards

  • 2 layers57 × 55.2 mmLogicAnalyzer, the printed circuit board in 3D

    LogicAnalyzer

    gusmanb/logicanalyzer

    24 channel, 100Msps logic analyzer hardware and software

    10 parts5.1kGPL-3.0
  • 2 layers32.2 × 15.4 mmProtector, the printed circuit board in 3D

    Protector

    byrantech/laptop

    anyon_e, a highly integrated, high end, open source laptop. Attempt the impossible.

    10 parts4.3kMIT
  • 2 layers26 × 18 mmConn, the printed circuit board in 3D

    Conn

    yaqwsx/KiKit

    Automation tools for KiCAD

    10 parts2.1kMIT
  • 2 layers44.3 × 30.5 mmLime2-SATA RevA, the printed circuit board in 3D

    Lime2-SATA RevA

    OLIMEX/OLINUXINO

    OLINUXINO is Open Source / Open Hardware, low cost from EUR 24 Linux Industrial grade Single Board Computer capable to operate -25+85C

    10 parts1.5k
  • 2 layers17.8 × 43.2 mmNano Adapter, the printed circuit board in 3D

    Nano Adapter

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    10 parts1.1kGPL-3.0
  • 2 layers53.9 × 23.2 mmBuffer, the printed circuit board in 3D

    Buffer

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    10 parts1kGPL-3.0