Fixing a poorly ZX-Spectrum (Part 9)
I was rather hoping that my long-winded series on fixing a 48K Spectrum had concluded with Part 8, but it turns out this Spectrum had one more surprise in store for me.
Last month, I borrowed its keyboard whilst testing a new ROM image in my Harlequin. I tested it afterwards and it decided to fail with garbage on screen.
This is symptomatic of lower RAM failure, so I quickly unplugged it, got my multimeter out, plugged it back in, and tested the 3 voltages required for the 4116 RAM chips. I was getting a steady 5V, but nothing on the -5V and +12V lines. If those voltages are not present and correct , there is a good chance those chips could fry, so I quickly unplugged it.
This looked like a failure of the DC to DC circuit near the power socket, and reading the service manual, looked like a failure of either transistor TR4 or TR5. These form part of the circuit that produce the extra voltages required for the 4116 chips.
I ordered replacement transistors from RS, along with a full set of electrolytic capacitors. The part list for the Issue 2 board can be found on my ZX Spectrum Hardware Page.
The Fix
I started off by unsoldering TR4 and TR5, and testing them in my ESR meter.
It looked like TR4 is borked – it’s reading as two resistors in series. TR5 looked fine, but I’ll replace it anyway. I can always re-use this ZTX213 in another project.
I tested the replacement transistors out of curiosity – unsurprisingly they look fine. Powering the Spectrum back on briefly at this point produced the copyright screen, which is good, as it looked like I’d correctly identified the fault.
Had the brief time it was powered with the damaged transistor damaged the lower 16K of RAM? Only one way to fnd out. I plugged a keyboard in and quickly tested RAMTOP with the following command.
PRINT PEEK 23732 + 256 * PEEK 23733
Thankfully this outputted the correct result: 65535. This command reads the system variable that stores the last working byte after the ROM memory test on boot. in a 48K Spectrum this should be 65535. I’d not done any immediate damage to the lower 16K RAM chips.
I had my suspicions as to why TR4 failed – the capacitors. This board has not been recapped, so they’re at least 35 years old. It’s quite possible one has failed in the DC to DC section around TR4 and TR5.
Next step: replace all the capacitors and test the ones I’d removed in the ESR meter.
And it looks like I found the culprit. Most of the capacitors were operating outside of their expected specification, but one in particular, C34, was completely shot. This should be a 22uF capacitor. It was reading as 25pF, and bizarrely the ESR was reading it on the wrong pins (2 and 3).
The +ve side of C34, according to the service manual, is the voltage regulator output. That would explain the damage to the transistor.
This Spectrum should now benefit from a full recap, and hopefully the mini service I gave the board today should be good for another 30-odd years.
So far its cost me the best part of £30 to keep this Spectrum alive. It’s had a replacement keyboard membrane (£9), a new set of upper 32K RAM chips (£12), a full recap (£8) and replacement transistors (£1.50).
But its worth it – I’ve got a lot of emotional investment in this particular Spectrum. Not only did it belong to Mrs B, I’ve also spent a reasonable amount of time getting familiar with the Spectrum’s schematics whilst restoring it.