Amiga ROM Bank Switcher
By Chris Hooper
HW Rev 1: 2021-02-13
The Amiga ROM bank switcher is a simple board that I made which allows the installation of a 2MB ROM/EPROM/EEPROM in an Amiga Kickstart ROM socket. The Amiga Kickstart ROM socket typically only supports a 512KB or 1MB ROM. This board provides jumpers which allows the other space of the ROM to be used as alternative Kickstart images.
The A18 jumper supports three positions:
- No Jumper (Low) - select the Upper 512KB image
- Left (Low) - select the Lower 512KB image
- Right (Bus) - let the Amiga control this address line (useful for 1MB images in Amigas which support 1MB Kickstart ROMs).
The A19 jumper supports three positions:
- No Jumper (Low) - select the Upper 1MB image
- Left (Low) - select the Lower 1MB image
- Right (Bus) - let the host control this address line (probably only useful in a programmer).
Intended use
Since the kickstart ROM chips are often difficult to access inside Amiga computers, often requiring further chassis disassembly, the intended use of this device is to allow two toggle switches at the exterior of the Amiga. These toggle switches could be used to select one of four Kickstart ROM images that the Amiga would use to boot. One switch connects to A18/Low and the other connects to A19/Low. The A18 switch, when "On", would short A18 to GND, and "Off" would allow the 10k pull-up to bring A18 high. Similar for the A19 switch. With a 512K images, you could have four ROM images in a 2MB device such as the 27C160 EPROM or the MX19F1615 EEPROM.
Some Amigas (A1200 for example) allow for 1MB ROMs instead of 512K. If you want to use 1MB Kickstart ROM images, this board can accommodate that by placing the A18 jumper on A18/Bus. As far as I know, there is no Amiga which supports a 2MB Kickstart ROM image, so you should probably not install a jumper at A19/Bus unless you are using this header in an EEPROM programmer.
Instead of a switch or switches on the exterior of the computer, another option is to just use two-pin jumpers, placing one each on the A18 and A19 pins. This won't make changing the desired ROM image very easy, but you may only want to use a single ROM image anyway.
Board source
This board is open source, and available in
EasyEDA here.
The Gerbers are available in Github here:
https://github.com/cdhooper/amiga_rombankswitcher
Assembly
So you've received your PCBs. You'll need the following components for the next step:
- Two 20-pin or 21-pin male-male machined pin headers, which you might need to cut to length. You'll use 20-pin headers if your motherboard has a 40-pin ROM socket. BE SURE to get machined pin headers -- do not use square pin headers as these will damage your motherboard socket.
eBay search example - Amazon search example
- One 42-pin 2.54mm DIP IC socket, preferable machined-pin. These are a little more difficult to find. eBay search example - I wasn't able to find these on Amazon. You could certainly find them on Digikey or Mouser
- Two SMD 0805 10k resistors. You can find these on eBay or Amazon with the "10k SMD 0805" search term. eBay search example - Amazon search example
- Two right-angle 2-pin or 3-pin headers. You only need 2-pin headers if your motherboard has 40-pin sockets (in this case, insetall the headers in the Low/A18 and Low/A19 positions). You'll probably need to buy a single long header and then cut to length. eBay search example - Amazon search example
Starting with a blank board, you will have the easiest time assembling if you populate components in the following order:
- Install the bottom pin headers
If you are using the 20-pin male-male headers instead of the 21-pin male-male headers, you must install them in positions 2-20 and 21-41. Skip pins 1 and 42 in this case.
A simple way to keep the pins aligned as you solder them down is to temporarily install them in your 42-pin socket (long side of the pins go in the socket) and then solder them down to the PCB. You can them remove the socket after they are fully soldered.
- Install the two SMD resistors on the top
If not using hot air, the easiest way to do this is use your soldering iron to put solder on one pad, then use tweezers to hold your component in place and soldering iron to solder down that side. Then you can set the tweezers down, pick up the solder, and move to the other side, applying solder with the iron.
- Install the top socket
Align the notch of the socket with the notch shown on the silkscreen.
- Install the two jumper headers on top
It may be tricky to get these to stay exactly where you want them. I found it's easiest to just tack down one pin, then use tweezers or your fingers to manually stick the header where it should go as you heat the pin.
The board on the left has been populated with 2x of 20-pin male-male bottom headers and the top SMD resistors. You will notice that "pin 1" and "pin 42" are left unpopulated. This board might be installed in an Amiga 500 or 2000, as they both have a 40-pin Kickstart ROM socket.
A different board on the right is shown fully assembled with 2x of 21-pin male-male bottom headers, the top SMD resistors, the top 42-pin socket, and two of the 3-pin headers. This board might be installed in an Amiga 500+, as I believe it has a 42-pin Kickstart ROM socket.
Installation
Align the Amiga ROM Bank Switcher with the Amiga kickstart socket, ensuring the notch in the Amiga's socket matches pin 1 of the switcher.
After installing the switcher, you should minimally test that there isn't a dead short between GND and 5V with the switcher installed. The easiest way to do this is to check for continuity between pin 22 of the socket and GND of the Amiga (any metal contact from the chassis). If you see only a few Ohms, there is a problem.
To locate Pin 22, observe the photo above where the switcher is completely assembled. The notch in the socket is near Pin 1. Pin 22 is located in the bottom left corner of the socket in the photo above (Pin 1: top right, Pin 21: top left, Pin 42: bottom right).
Some Amigas have two ROM sockets, and you might be able to use two switchers in those models. It should be safe to have a switch connected to A18 on both boards to switch them both. Same for a second switch on A19 of both boards.
A500
I've not yet tested in this model Amiga, but don't expect there will be a problem.
A2000
There should be no issue with using the Amiga ROM Bank Switcher in this motherboard. It has been tested as working in an Amiga 2000 Rev 6.2 motherboard.
A3000
The two motherboard ROM sockets are too close together for this adapter, but only by a few millimeters.
Specific for this model, I've developed an Amiga 3000 ROM Bank Switcher for the dual ROM slots. It will accept two ROMs in the required form factor and will allow switching both ROMs with only a single set of jumpers.
If you don't have the Amiga 3000 ROM Bank Switcher and would like to make this switcher work in an Amiga 3000, With minor hacks, you might be able to put two switchers next to each other. Be aware that this switcher is designed for the U180 and U181 sockets, and those sockets must have the correct pinout (so not a rev 6.x Amiga 3000 motherboard). If you have an Amiga 6.x motherboard, you will need to use the ROM Tower to use these switchers.
A couple ideas if you wish to use two single adapters:
- Install one or two extra 40-pin sockets under one of the boards. It doesn't need to be much; only enough to raise the PCB of one board above the PCB of the other. I recommend placing the socket(s) under U181.
- If you have a flat surface planer (such as a belt sander), you could shave down the edge of the two boards so that there is less overhang and then they will fit. I've done this, and it's still exremely tight. Be careful not to shave too much, as there needs to be insulation between the pins of the two boards.
A3000T
I don't own an Amiga 3000T, but from photos of the motherboard, it appears the sockets are slightly further apart than those of the Amiga 3000 motherboard. You may be able to fit two of these switchers side-by-side in this model, as I believe the sockets are 0.8" (20.32mm) apart.
A4000
From a quick view of the Amiga 4000 motherboard, it does not appear that two of these switchers will physically fit in the two sockets, as they are end-to-end.
In a pinch, you might be able to install two of these switchers in an A4000 if you stack a few 40-pin sockets below one of the switchers.