When I bid for that copy of Questron II for the Commodore Amiga on eBay a few weeks ago, I knew I was getting myself into trouble. You see, the sad fact is that I haven’t had a fully functional Amiga since before 2006.
My Amiga 500P was my primary computer through my undergrad college years. At first, I used it – along with my trusty SupraModem 2400 – to discover the BBS scene. Towards the end, I rigged up some kind of IP-over-serial hack to access the Net from my dorm room. I added a GVP HD-8+ sidecar with a massive 50 megabyte hard drive (SCSI, of course) and 2 megs of RAM. At considerable expense and with the help of a good friend I finally got an AmigaOS 2.04 update ROM kit for it. It was a trustworthy machine that remained capable long past Commodore’s corporate demise and its own technological obsolescence.
Eventually, though, I had to move on, and by 1998 or so I was a dedicated Linux snob. I never got rid of the A500 but, as the Rush song goes, “Time if nothing else will do its worst.” When I finally hooked it up again, a few years ago, all was not well. It booted up, with a few transient read errors on the disk, but the keyboard didn’t respond.
With a PC, a broken keyboard is a trivial problem – you just replace it. The Amiga 500 is from that style of 80s home computers where the keyboard was integral with the case, and connected directly to the motherboard. And for all I knew, the motherboard itself might have been the problem.
I wasn’t as hardware-savvy then as I am now; or at least I was more chicken about poking around in the guts of a computer. Instead, I decided to try to recover the information from the hard drive and a few important floppy disks – I figured I could use them with the WinUAE Amiga emulator.
That turned into a major project. I used the Amiga Explorer software that came with Cloanto’s AmigaForever to connect the A500 to a PC using a pair of serial cables, a null modem adapter, and a USB-to-serial port adapter. There’s a piece of the Amiga Explorer software that you’re supposed to install on the Amiga; and in theory you can do that by redirecting the serial port to a file by entering a single command in the Amiga shell. The theory would’ve worked really well if it hadn’t been for the broken keyboard.
Eventually, I figured out a workaround: using a text editor and a folder of old email messages, I was able to copy and paste a script file together, one character at a time, using only the mouse. After that we were in business, and I was able to copy the entire hard drive image, the system ROM image, and every Amiga floppy disk I had sitting around that wasn’t copy-protected. Since then, I’ve had the entire system available virtually on my desktop.
Fast forward to 2013, when I decided it was time to try again to fix the hardware. It took me a while to find a replacement keyboard; they only show up on eBay occasionally, and even then they’re usually not American keyboards. Eventually, I settled for a cheap keyboard shipped from the UK; I figured if it worked I could swap individual keys from the broken board to recreate a US keyboard layout.
In the meantime, I did some other preparations. We’re talking about a computer that’s more than two decades old, so caution is good. Before I fired the Amiga up, I tested the power supply with a voltmeter. It’s supposed to have +5V, +12V, and -12V signals. I measured +5.57V, +12.65V, and -11.17V (under no load), which I expected would be close enough.
I did a quick power-on test to see if the system was still working like I remembered. While it came up immediately, I noticed that it was short half a meg of RAM. I had some hunches about that, but first things first.
Getting the computer open was easier than it used to be – only three of the original screws are still in place. I stripped a couple of them back in the days before I had a decent set of Torx screwdrivers, and left them out for good.
Before I swapped out the keyboard, there was something I wanted to try. The A500 uses a pair of 8520 CIAs (Complex Interface Adapters), which are pretty much the same as the 6526 CIAs in the Commodore 64 and serve most of the same functions – they interface with the serial and parallel ports, joystick ports, and the keyboard. The 8520s have a reputation for being failure-prone, so I tried swapping them. If one was good and the other bad, I’d be trading my keyboard failure for some other problem. At least I’d know what was going on.
Swapping the CIAs had no effect, so I resigned myself to using the (fairly grungy and yellowed) UK keyboard. It wasn’t pretty, but it did work! I was still looking at a lot of cleaning and replacement of keycaps, but there was one last thing to try. The A500 keyboard has a small circuit board attached to it that holds the power and disk LEDs, some 7400-series logic, and a Commodore Semiconductor Group 6570-036, which I took to be some kind of bespoke keyboard controller IC.
I didn’t see anything wrong with the circuit board on the original US keyboard, but I decided to swap the controller from the UK keyboard onto the US keyboard to see what would happen. And it worked! Apparently the US keyboard was mechanically sound, and the problems were in the controller electronics. Personally, I’m just happy to have as much of the original machine in working condition as possible – for sentimental reasons, if nothing else.
By the way, according to this web site, the 6570 is actually a microcontroller with a 6502 CPU core. I guess the Amiga and C64 have more in common than I thought!
With the keyboard working again, I turned my attention to the missing memory. The A500 has a “trapdoor” expansion in the bottom, which usually contains a 512 KB RAM expansion and a battery-backed clock. I’ve heard plenty of horror stories about those old batteries leaking and corroding the traces on the expansion card. I didn’t know how bad it was or if it would be salvageable. Before I could find out, though, I had to deal with the metal RF shielding which completely encased the expansion card and was actually soldered shut!
Let me tell you, dealing with that was a pain! I spent more than half an hour with a soldering iron and a spool of desoldering braid, trying to clear enough solder away to get any of the three tabs loose. I was just about to give up and open it up with a pair of aviation snips when I finally got one side loose, and was able to bend the top half of the shielding out of the way.
Ironically, after all that, there was very little sign of any damage. Even more ironically, when I put it back together and tried it again, it worked (and yes, I did try reseating the board before spending all that time opening it up).
So now I once again have a fully operational Amiga, though it’s not perfect. There’s a buzzing noise coming from the old Commodore 1084s monitor which might indicate a bad transformer or a loose solder weld or something, and I’m not about to go poking around in the back of a CRT. The SCSI hard drive is also making a noise like a jet engine, which is a little worrying, and I don’t know how much longer it might last. It may be time to look at what kind of replacement technology is available for it.
On the upside, I am happy to report that the Questron II game disk works just fine, and the game even has some graphical upgrades over the C64 version. I may be a little rusty with old-school CRPGs, though, because my character got attacked and killed by wandering monsters when I was less than 20 steps away from the first town!