Installing Open Kickstart Switcher in A500

The Hardware

The OpenKickstartSwitcher in combination with the OpenAmigaMouseTrigger makes a great enhancement for your A500/+. These fantastic little pieces of hardware - made by SukkoPera - in combination with a 27C160 EPROM makes it possible to switch between 2-4 different KickStart (KS) images. If you add a second trigger source, you could switch between 2-6 KS images. The maximum numbers of images you can use in you switcher depends on what EPROM you use:

  • 27C800 can hold 3 images - 2x 256KB and 1x 512KB.
  • 27C160 can hold 6 images - 4x 256KB and 2x 512KB.

Choice of trigger signals

In the following example I will use one OpenAmigaMouseTrigger, and a 27C160 EPROM populated with 6 images. However, I will only switch between 4 of them; the other two will just be for filling out the EPROM so that it can be programmed correctly.

When using a larger EPROM like 27C160, you have to use the bottom pad on the KS Switcher - A19 - to be able to select all 6 positions. You will also need a second Mouse Trigger, a physical switch, or some other source that is possible to set a logic LOW signal for A19.

Because I only use 4 images on my switcher, 2x 256KB and 2x 512KB, I will use SW2 in combination with A19 to get my desired combination. Also the SW1 and SW2 has pull-up resitors, so if no signal is connected it will always stay HIGH. This way I can skip SW1 and get away with only one Mouse Trigger. Same goes for the direction signals from Joystick 2, center postion = HIGH.

The truth table can be a bit confusing as the selection order gets reversed compared to the order you put your images in when programming the EPROM.
See how I populated the KS images in the truth table below, X = do not care:

ROM Image # Size - KB (SW1)* SW2 A19
1 - Fill out KS image - Not able to select 256 (LOW) LOW LOW
2 - DiagRom 1.2 (truncated) 256 (HIGH) LOW LOW
3 - KS 3.X 512 (x) HIGH LOW
4 - Fill out KS image - Not able to select 256 (LOW) LOW HIGH
5 - KS 1.3 256 (HIGH) LOW HIGH
6 - KS 2.05 512 (x) HIGH HIGH

*not used in my case

Translated to my trigger signals, the selection will be as follows:
6 - KS 2.05 - Joystick centered (default image)
3 - KS 3.X - Joystick Right
5 - KS 1.3 - Joystick Up
2 - DiagRom 1.2 - Joystick Right + Up

Note, if you are only using the 27C800 there is another truth table to be used, see below:

ROM Image # Size - KB SW1 SW2
1 256 LOW LOW
2 256 HIGH LOW
3 512 x HIGH

A common source to use as trigger for a KS switch is fire0 - left mouse button, or fire1 - Joystick 2, button 1. These signals could be easily be hijacked at the vias nearby the ODD CIA chip, see image below (rev. 6A).

I choose to go for a different approach, because I already had my mouse buttons hooked up to alternative startup-sequences, and I needed to be able to switch between four different KS images.

The signals I picked are the Right and Up direction of Joystick 2, they could be found under the disk drive.

Right direction Joystick 2

Up direction Joystick 2

However, as long as you choose two adjacent directions you can pick any pair you like to achieve your four trigger signals, If you need less than four, you can pick any signal you want.

The signals for Joystick 2 are as follows: 1 = Up, 2 = Down, 3 = Left, and 4 = Right.



Mounting of the KS Switcher and the Mouse Trigger

When handling ICs, it's advisable to use an electrostatic discharge (ESD) wrist strap to ground yourself to the PCB. This is to be sure you do not damage the sensitive ICs.

When you have decided which trigger signals to use, it's time to heat up your soldering iron!
Use a solder wick to clean the vias from solder, don't forget to use flux to make the process easier. Sometimes you will need to use the solder wick on both sides. My favorite is Chemtronics 60-2-5 Soder Wick No Clean SD, it's a bit pricey but totally worth it IMO!

I added two pin headers for easier soldering of the signal wires.

There is a suitable hole for the wires in the "ARTWORK" silk, and there is a matching hole that goes through the shielding as well. Depending on your insulation layer, you might have to make a matching hole get the wires through, fortunately mine was already there. Also, there is a perfect place for the trigger to the right of these holes, between the lower mounting points of the disk drive.

Be sure to color code your wires, so they have the same color for in and out signals, it will make your life a bit easier! The Mouse Trigger holds in place by itself, thanks to the wires going through the hole in the shielding and the plastic support for the disk drive.

To remove the KS ROM from its socket, use a small flat screwdriver. Insert the screwdriver on one side and carefully twist it a tiny bit clockwise. It is important that you do not lift the pins from the socket all at once, if you do you might bend and damage the pins.

Move the screwdriver to the other side. Now, carefully make the twist anticlockwise.

Repeat this procedure, but every second time you change the direction you twist the screwdriver - this is to lift the ROM from the socket in all four corners.

When it feels like the ROM is about to come loose, grab it with your fingers and carefully wiggle it until it is completely loose. If it too hard to wiggle, go back to the procedure with the screwdriver.

Because I use the 1.5 MB trapdoor expansion on my A500, I have soldered pin headers to JP2 above the KS socket. To be able to fit the KS Switcher, I had to bend them to about a 45 degrees angle.

Inserting the adapter is easy, just push it carefully down into the KS socket.

All wires are fitted and tidied up with shrink tubes. The KS Switcher gets its power from the KS socket. Also note the grey/white wire going from the bent JP2 pin header, to the Gary adapter.

SW2 is connected to green wire - Joystick Right
A19 is connected to yellow wire - Joystick Up
VCC and GND goes to the Mouse Trigger, and as you can see I have no wire going to SW1.

Trigger nicely fitted under the disk drive.

I missed some photos during my build, but I think you get the picture anyway!

Also, I can warmly recommend you to take a look at SukkoPera's other open source repositories, there is a lot of nice retro stuff there!
One of the cooler projects is his Reamixx500, a fantastic effort to try and save the A500 for future enthusiasts!

I hope you enjoyed all this, and please stay tuned for more interesting posts 😉

Spread the love

4 thoughts on “Installing Open Kickstart Switcher in A500

  1. Could you elaborate on the pull up/down resistors thing? If I guess right, when we use simple switches to connect SW1/SW2 to ground or not connected (NC) state we don’t need any resistors, ’cause the inputs are already tied to HIGH state. But for the A19 input we need to solder a pull up resistor to the positive pad if a switch will change it from ground or NC (which will become HIGH) state? What value should this resistor be?

    • Hi
      I’m not exactly sure how to answer this because I don’t know your setup, but for A19 you can pick one of two alternatives to solder your switch.
      First alternative is that you solder a 10K resistor between the VCC and A19 pads (to follow the other switches normal state), then you solder your switch like this: NC – A19 – GND.
      Second alternative is that you solder your switch like this instead: VCC – A19 – GND.
      So you don’t need to use a pull up resistor if you don’t want as long as you connect all pads to your switch.
      If this didn’t answer your question please ask again and I’ll try to explain it better 🙂

      /Daniel

  2. Ok, I soldered a 10kOhm SMD resistor from VCC pad to A19 pad and used a simple switch to connect the A19 pad to ground – works fine. 🙂

  3. Oh, I didn’t see your previous post, Daniel, but eventually did as you recommended (the first alternative). Thanks!

Leave a Reply

Your email address will not be published. Required fields are marked *