ZX Spectrum 128k +2 - Fault

In May 2020 I bought a supposedly working 128k +2 Spectrum to sit in place of my existing 128k +3 model. The main reason was that the +3 model is incompatible with all of the PS2 keyboard modules out there.

On receiving the spectrum I powered it on to test, and everything seemed to be fine; the usual 128k menu shows:

… even my DivIDE+ interface seems to work.

But, since I didn't have it connected up to my keyboard interface, I didn't use it for any length of time… I should have.

The problem I seem to have, is that when left on for any length of time, or soon after loading a game, I start experiencing random screen corruption, reboots and other miscellaneous issues. These manifest as the following:

That's the screen shortly after a spontaneous reboot after loading a game from the DivIDE+ Fatware menu.

Those images are the contents of the screen after resetting the system, or powering it off and on again after it has been on for anywhere from 30 seconds to 5 minutes. After that point it won't return to loading the Spectrum menu until it has cooled down completely.

I ran the Spectrum without the keyboard so that I could monitor the temperature of the chips (just by feel), but nothing seems to get particularly hot.

I then took the board out and examined it - not obvious leaking capacitors, nothing that looked to be blown, no broken traces but on the rear of the PCB there were some poorly soldered pins on various chips (including the 16x DRAM chips), so I resoldered them and re-tested, but that didn't appear to make any appreciable difference.

I ordered a complete 128k +2 issue 1 replacement capacitor kit from Retroleum, and this will be my next fix attempt; the kit is mega cheap, and it's a pretty easy job since it is all through-hole and with relatively large components.

[Update 27th July 2020] - got around to removing the old capacitors… The Spectrum traces are really quite weak; a couple of them came away whilst heating up the legs of the old caps. I eventually settled in a method of snipping off the old caps and pushing through the tiny bit of let that was left.

Here's the new caps in place:

So any better? In a word, no. Although it did work the same as before (okay for a minute or two, before it starts resetting and corrupting the screen), so at least i didn't mess up the capacitor install!

Next up has got to be DRAM chip replacement, and in the 128k there are 16x 4164 64kbit chips… That's a lot of pins to desolder…

[Update 28th July 2020] - Set of 16x 4164 (64k x 1bit) DRAM chips ordered from new-old-stock supplier in Bulgaria; worked out around £1 per chip with the postage included. Should be here around the second week of August; I should work up the courage to start desoldering the existing chips now…

[Update - August 10th 2020]

Okay, so fixing any suspect solder joints didn't do it, neither did replacing all of the capacitors. The only thing left is to begin replacing the various chips. The most likely is memory, followed by the Z80 and the ULA.

One the 128k +2, all of the memory chips are identical, unlike the original Spectrum and 128k, which has two different banks and two different types of DRAM. Since the machine wasn't stable enough to run any diagnostic tests, I had to assume that it could have been any chip that was faulty (assuming, of course, that it was going to be a memory fault at this point).

I managed to source 16 brand new MB8264A-15 DRAM chips (64kbit x 1, 150ns, identical specs to the OKI M3764A-15 which was fitted in my model) from a seller in Bulgaria, for the bargain price of about 90p per chip!

So, let the desoldering of the 256 DRAM pins begin!

One bank removed, another 8 chips to go…

… and we're all done.

I decided very early on that I wasn't going to directly solder all of those DRAM chips directly to the board again, instead I fitted 16 new DIP-16 sockets, to make any future repairs that much easier:

And with the DIP sockets fitted, popping in the new DRAM chips was trivial:

[Update - August 10th 2020]

So, did it work?


It only went and worked!

I was cautious however, as I had experienced the Speccy working previously, only to start rebooting and crashing after being left on for a few minutes. This time I let it sit at the +2 menu screen for a good 15 minutes to warm up.

No problems at all.

I also noticed that the picture was substantially clearer than it had been in the past. I'm not sure which areas on the board are served by the capacitors that were replaced, but if they have any involvement in the video out circuitry I wouldn't be surprised, the image quality over the RGB scart connection into my OSSC is by far the best I've ever seen a ZX Spectrum produce. It it outstanding.

- OSSC Line5x mode at 1920×1200, no scanlines

- OSSC Line5x mode at 1920×1200, 12% scanlines (subtractive)

And close up images of the individual pixels on the screen:

Now that's a result!

Argh! More Crashing!!!

Whilst the Spectrum seems to be stable running by itself, I have found that plugging anything in to the edge connector (my DivIDE+ CF adapter, or my Penguin PS/2 keyboard interface from, the screen corruption and crashing returns instantly.

Oh, and now it's back to screen corruption all the time m(

[Update - August 11th 2020] - And now it stops doing it without anything plugged in … It seems as if once you've plugged a peripheral in, the system will keep powering on to screen corruption like this, until you've let it sit unpowered, without any peripherals, for an extended period of time. Then it's fine (without peripherals) again.

Have ordered a replacement power regulator (Traco TSR 2-2450 - switching regulator in place of the LM78S05 linear regulator) and Z80 CPU, as they are the next suspects. Especially when it appears to be far more stable without anything plugged in to the expansion bus.

  • blog/zx_fault1.txt
  • Last modified: 2020/08/11 16:55
  • by john