When you’re trying to get something done on schedule, it’s important not to get distracted. When you’re doing something for fun, it’s important to allow yourself to get distracted, because that’s where a lot of the fun comes in. In this case, I’m going to take a quick break from a software project (figuring out why the double buffering in my Amiga 500 display code doesn’t work) to muck around with the hardware.
I suppose I got caught up in the excitement of programming the old beast, because late one night last week, after a short hacking session, I went online and bought some hardware upgrades for this 23-year-old computer. This was an excellent decision.
My excuse was that I did this in the interests of preserving the system’s useful lifespan, and also of giving myself a quieter workspace. My first purchase was an Indivision ECS scan-doubler and flicker fixer. This would let me hook the A500 up to a VGA monitor or TV, instead of relying on my 1084s monitor, which generates an annoying buzzing sound whenever it’s turned on.
The second upgrade was the brand-new ACA500 accelerator. This would go in place of my GVP-HD8+. By replacing the old SCSI hard drive with a CF card socket, I’d get rid of the moving parts and the noise they generate, which has started to resemble a small jet engine. The performance boost of running at 14 MHz was a bonus.
I started by installing the Indivision, since that was the most invasive part. I’m always careful opening the A500, since it’s an old machine and I’ve operated on it quite a few times – often with incorrect tools. Back when I first upgraded the internal ROM, I didn’t even have a set of Torx screwdrivers, and these days only 4 of the original screws are still in place.
The Indivision ECS sits between the Amiga’s Denise video chip and its socket, so my first challenge was pulling Denise. Even with a decent chip puller and a couple screw drivers, Denise was trouble to remove. You’d figure that chip had been stuck in the socket for twenty years or something! To make matters worse, the left edge of the chip is pretty close to the side of the metal RF shielding around the Amiga motherboard, so I couldn’t get a screwdriver in very well to pry it up. I did what I could, and rocked it back and forth with the chip puller, but there was still that one terrifying moment when it suddenly came loose, and I had to check to see if any pins had been damaged. A couple had bent slightly, but nothing serious. I definitely need to work on my technique, though.
The old Denise fits into a socket on the Indivision, and then the Indivision fits into the Denise socket on the motherboard. Stupidly, I had to take it out after inserting it the first time because I’d forgotten to attach the grounding line, but soon everything was in place. There’s a ribbon cable that plugs into the Indivision that has a VGA connector at the end, but you’re left to your own devices about how to ge that out of the computer. For now, I’ve just got it slipped out through the expansion port on the side of the Amiga case. Eventualy, I might look at making an opening in the back of the case.
Interestingly, I did have to make one additional modification that the Indivision instructions didn’t mention. I found that the Indivision board blocks one of the tabs that the top part of the RF shielding uses to attach to the motherboard. I considered leaving the shield off completely, especially since some of the small metal tabs on the bottom plate had finally snapped off. Eventually, I decided to use a pair of aviation snips to trim an opening in the RF shield, so there was plenty of room for the Indivision ECS and its grounding line.
I reattached the keyboard, but left the case open so I could do a quick test and make sure I hadn’t destroyed the computer. I attached the VGA cable to the TV I keep around for my C64 and Raspberry Pi, hit the power, and was rewarded with a clear image of the Kickstart 2.04 “Insert disk” screen. That was a relief.
I’ve tried out the Indivision in a variety of graphics modes, and so far I’m pretty happy with it. It seems to “just work”. I have noticed a slight amount of “ghosting” with certain high-contrast color combinations, which is one of those analog-y things that’s hard to nail down. But the overall picture quality is entirely acceptable.
By comparison, installing the ACA500 is trivial – it just plugs into the expansion slot. It’s a little weird having a naked circuit board sticking out the side of the machine like that but… eh, whatever works.
And it did in fact work. Just like that. I restarted the machine and was greeted with the ACA500 boot menu. It includes licensed copies of Kickstart 1.3 and 3.1, and a variety of advanced options I haven’t really looked at yet.
I’ve replaced my old 50 MB hard disk with a Compact Flash card, but then I had to figure out how to set up the CF card. It turns out the easiest way to do that was to use WinUAE on my PC. WinUAE can mount a CF card with Amiga partitions – you just select “Add hard drive” in the Hard Drives tab. Then I was able to install AmigaOS 3.1 on it from floppy ADF images. The next step was to mount both my old 2.04 hard drive image and the CF card and copy files to the CF card.
The problem I’m facing now, and just starting to deal with, is that my 2.04 install was highly customized and, in the intervening years, I’ve forgotten how quite a bit of it works. For example, I have a dock tool on the Workbench, but I couldn’t remember what it was called or where its configuration files are. Also, a bunch of the executables on the hard drive use some kind of XPK compression that automatically expands at runtime, and I have no idea how that works. Never mind all the assigns and aliases that I had set up in my startup-sequence and user-startup scripts. I guess if I wanted to remember how all this stuff works, I’ve found a way to jump into the deep end of the pool.
And I still have to figure out why my double-buffering code doesn’t work right!