Last time I left my Amiga 500 with a keyboard fault, is this issue that fault has been diagnosed and a new boot time fault emerged…
First up, the keyboard. After disassembling the back of the keyboard twice (30 screws each time!) and replacing the PCB for the keyboard I managed to find that the traces on the keyboard membrane were all broken near the connector. I’m guessing the connector being flexed into place for 30 years caused some issues. Or whoever owned it previously did some damage. Either way the membrane is not repairable at the point of this break and needs replacing.
As luck would have it I managed to find on eBay a whole working keyboard for cheaper than a new membrane. So I now have a new (old) keyboard for the machine.
Now for my next problem, and this one was quite complicated to figure out. Although the machine booted for me in the previous part of this series, I found that sometimes it wouldn’t boot and it would almost never reboot correctly. When rebooting I would get either a black screen, a hang or sometimes an immediate Guru Meditation crash.
This was happening with software rebooting as well as using the keyboard to send a reboot signal. I have a chip called DiagROM which can replace Kickstart and diagnose hardware failures on the Amiga. This wouldn’t boot no matter how hard I tried. I figured there had to be something wrong with the reset circuit which is controlled by a chip called Gary.
I replaced Gary with a known good one, no joy. Maybe the CPU? I replaced this too. Still no success. I swapped the CIA chips, even Paula in a last ditch attempt. Still nothing. At this point I was praying it wasn’t Fat Agnus as I don’t have a compatible spare and the socket can be quite fragile.
I figured I would buzz the reset lines with a multimeter to make sure the signal is getting through. There is a HLT and RST signal that comes from Gary when it is time to reset. So first I buzzed the HLT signal from Gary to the CPU. All good. Then the RST signal, nothing! I buzzed from Gary to Paula and other chips and they worked. Just the reset line to the CPU was failing.
I traced along and found that a PCB trace that connects the CPU to the reset line was broken under the R402 resistor I replaced in part 2. Likely due to the corrosion damage there. So I ran a temporary wire between the RST pins of the CPU and Paula to double check my findings.
And we have success! The Gotek drive I have temporarily wired needs to reboot the machine once images are selected to boot them. This was now working every time. The keyboard reset signal was working every time too and I even loaded Lemmings on it to test. I even tried a cold boot several times and it all worked beautifully.
So, now I need to find some good points to make this permanent (I know where to place it on the CPU side, I just haven’t found a suitable place on the Gary side). I also still need to replace the damaged trapdoor connector. I’ll likely borrow a friend’s electronics lab for that as he has much better desoldering tools than me.