ZX Series 6a with weird memory issues
Posted: Thu Mar 20, 2025 8:59 pm
Hi everyone! I inherited a ZX 48k that was in really rough shape and was destined to be a donor board. The ZX is a 48k 6a model. Almost everything was busted on this motherboard...
Here's what I have done so far:
- Bad voltage regulator - replaced with TRACO
- 2 bad rams were bringing down the 12v and -5v lines (IC7 and IC11)
- Replaced D19 as it wasn't testing well
- Replaced TR4 and TR5 (TR4 was dead)
- Verified voltages are normal after these replacements
- Verified TR1, TR2, TR8, and TR9 are working normally (pulled from board and tested out of circuit)
- Did a full recap with axial caps
- Did the composite video mod
- Socketed and replaced LM1889 which improved the video quality
- Socketed and replaced all lower RAM
- Removed all upper RAM
- Pin 39 on the ULA had a very unstable 14Mhz. I replaced X1 and now I get proper, steady value. (pin 32 gives a good 3.5Mhz)
- Socketed and tested ROM with a known working ROM a friend lent me
Someone messed with the 22uF lower RAM decoupling capacitors on this board, and C57 was missing entirely. C6 and C7 appeared to have been desoldered at one point, but then not completely resoldered back into place. Replacing all of these is my next step. In the meantime, I soldered down the others, and dropped a radial 22uF in C57 for the time being. (but I think this cap would only affect upper memory?)
Currently, the ZX powers on, all voltages are good, and I get a white border, but the paper shows the screen garbage loop that is seen when the ZX has no memory installed at all. This is what I see with all the lower RAM populated:
https://www.youtube.com/watch?v=izcGFap ... WL&index=1
I had a loaned ByteDelight diag board for a bit... When the board is inserted, I get the same garbage on the screen, the border changes color as expected, and eventually the border displays that all the RAM is bad. I have a couple of dozen 4116 chips, but they're all untested. (I have a tester on the way, and it should be here in a couple of weeks.) However, whatever RAM I try, the diag board always says that all the RAM is bad, which I find hard to believe, and it makes me think something else is going on...
Here's a video of a run with the diag cart:
https://youtu.be/9h1h9DkiUmA
I have checked pins for address, data, etc. on the RAM, ULA, ROM and Z80 and everything *seems* fine, but I have to admit I'm a total noob with Spectrums, so there's probably a lot I'm missing here.
So... Some initial questions, for the kind souls who are still with me:
- Does anyone have any pointers on where to look next to debug this?
- I'm beginning to think the culprit might be the PCF1306P. Does anyone know how to test this chip?
- I'm really confused as to why I get garbage on the screen when I use the diag board. Don't diag boards override the ZX ROM/RAM and can still run regardless of the state of the memory?
Thanks in advance for the help!
Here's what I have done so far:
- Bad voltage regulator - replaced with TRACO
- 2 bad rams were bringing down the 12v and -5v lines (IC7 and IC11)
- Replaced D19 as it wasn't testing well
- Replaced TR4 and TR5 (TR4 was dead)
- Verified voltages are normal after these replacements
- Verified TR1, TR2, TR8, and TR9 are working normally (pulled from board and tested out of circuit)
- Did a full recap with axial caps
- Did the composite video mod
- Socketed and replaced LM1889 which improved the video quality
- Socketed and replaced all lower RAM
- Removed all upper RAM
- Pin 39 on the ULA had a very unstable 14Mhz. I replaced X1 and now I get proper, steady value. (pin 32 gives a good 3.5Mhz)
- Socketed and tested ROM with a known working ROM a friend lent me
Someone messed with the 22uF lower RAM decoupling capacitors on this board, and C57 was missing entirely. C6 and C7 appeared to have been desoldered at one point, but then not completely resoldered back into place. Replacing all of these is my next step. In the meantime, I soldered down the others, and dropped a radial 22uF in C57 for the time being. (but I think this cap would only affect upper memory?)
Currently, the ZX powers on, all voltages are good, and I get a white border, but the paper shows the screen garbage loop that is seen when the ZX has no memory installed at all. This is what I see with all the lower RAM populated:
https://www.youtube.com/watch?v=izcGFap ... WL&index=1
I had a loaned ByteDelight diag board for a bit... When the board is inserted, I get the same garbage on the screen, the border changes color as expected, and eventually the border displays that all the RAM is bad. I have a couple of dozen 4116 chips, but they're all untested. (I have a tester on the way, and it should be here in a couple of weeks.) However, whatever RAM I try, the diag board always says that all the RAM is bad, which I find hard to believe, and it makes me think something else is going on...
Here's a video of a run with the diag cart:
https://youtu.be/9h1h9DkiUmA
I have checked pins for address, data, etc. on the RAM, ULA, ROM and Z80 and everything *seems* fine, but I have to admit I'm a total noob with Spectrums, so there's probably a lot I'm missing here.
So... Some initial questions, for the kind souls who are still with me:
- Does anyone have any pointers on where to look next to debug this?
- I'm beginning to think the culprit might be the PCF1306P. Does anyone know how to test this chip?
- I'm really confused as to why I get garbage on the screen when I use the diag board. Don't diag boards override the ZX ROM/RAM and can still run regardless of the state of the memory?
Thanks in advance for the help!