Struggling to resurrect my +2 :-(

For experts to discuss very technical stuff and newbies to ask why the Spectrum they bought off ebay doesn't work.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2641
Joined: Mon Nov 13, 2017 3:16 pm

Re: Struggling to resurrect my +2 :-(

Post by Ast A. Moore »

zxplusplus wrote: Sat Jul 27, 2019 7:30 pm does anyone have a complete 32kb rom file I could use for comparison?
You, most likely, have both 16K ROM images. Any Spectrum emulator (that emulates the +2) will have the appropriate ROM images. Fuse is one of them. The files are called plus2-0.rom and plus2-1.rom.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

got it..

one half matches the plus2-0.rom, the other half matches plus2-1.rom

so it looks like my ROM chip is ok..

I'll go ahead and burn the ZX-Diag .bin onto a chip and see if that provides any insights.
User avatar
1024MAK
Bugaboo
Posts: 3123
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Struggling to resurrect my +2 :-(

Post by 1024MAK »

A suitable test ROM:
https://github.com/brendanalford/zx-dia ... i/Firmware

https://github.com/brendanalford/zx-dia ... s/releases

viewtopic.php?f=22&t=1064&p=15158#p15158

Note that as the test ROM (file “testrom.bin”, a plain binary file) is only 16K bytes long, I strongly suggest you either double it up (make a file comprising of one testrom.bin combined with another copy of testrom.bin making the file a total of 32K bytes long) using your PC before downloading it to your programmer, or download to 0x0000 on your programmer, then copy the block 0x0000 - 0x3FFF to 0x4000. Then you don’t have to worry about getting the test ROM image in the correct part of the EPROM chip (as it will be in both ‘half’s’).

Mark
Last edited by 1024MAK on Sun Jul 28, 2019 12:46 am, edited 1 time in total.
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
1024MAK
Bugaboo
Posts: 3123
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Struggling to resurrect my +2 :-(

Post by 1024MAK »

zxplusplus wrote: Sat Jul 27, 2019 7:30 pm The programmer arrived today and I've saved a copy of the data on my rom chip.

My plan was to compare this to a stock rom file to see if the data on mine looks corrupt but i'm confused, the dump of my rom is 32kb but all of the versions i'm finding on the web are only 16kb.

As such, when I compare my rom to the one downloaded from the web, the first half is identical, but there's nothing to compare the second half to.
The original ZX Spectrum only had a 16K byte ROM. Hence the space in the Z80 memory map for ROMs is only 16K bytes.
However, the 128K machines use either one (or for the later machines) two 32K byte ROM chips. Each 32K byte ROM chip contains TWO 16K byte ROM images.

All the official ROM versions are here.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

Thanks both..

I've just had a go at making a 32kb testrom file as detailed by 1024mak

please see - https://we.tl/t-3TU0vB6VK6

Does this look correct? :D
User avatar
1024MAK
Bugaboo
Posts: 3123
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Struggling to resurrect my +2 :-(

Post by 1024MAK »

Yes, that looks fine ;)

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

Thanks Mark

I've just baked and ran the rom.

Please see - https://we.tl/t-r9eqxeUZPp

I did manage to get it to run once and actually say "ram fail" on the screen briefly, it looks like all of the ram is failing? but I can test both sets of ram in the Atari and it's fine on that and will run a ram test for an hour plus without any issues.

Does this help with diagnosis at all? what would cause all of the ram to fail once in the Spectrum?
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2641
Joined: Mon Nov 13, 2017 3:16 pm

Re: Struggling to resurrect my +2 :-(

Post by Ast A. Moore »

zxplusplus wrote: Mon Jul 29, 2019 12:00 pm what would cause all of the ram to fail once in the Spectrum?
This could mean one of the following:

1. The RAM ICs are okay, but the wrong time (timing)
2. The RAM ICs are okay, but the CPU can’t access them properly.

It is thus possible that the problem lies somewhere in the data/address lines. In which case, it is likely that the CPU likely can’t communicate properly with the ROM (although, unlike the RAM ICs, the ROM is connected to the CPU directly). That is not to say that the PCF1306P, if faulty, couldn’t wreak havoc on the same address lines.

Check IC15 (an LS04 hex inverter). Check and recheck all the pertinent PCB traces for all the data and address lines.

Not sure what else we can do without an oscilloscope.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

Thanks

Since posting the video the symptoms worsened, I'm not getting the initial beeps anymore, just a screeching sound and psychedelic bars on the border!

I've ordered a brand new CPU just incase the one I'm using has been on its last legs.

I've also ordered the ls04 chip you mentioned as these are cheap.

Beyond that, I have to admit that the repair services offered by people like mutant caterpillar are starting to look like good value!

I'd like to learn more but think it would help to have a good working system initially so that I can take readings off that and understand normal behaviour before trying to diagnose faults on a broken system.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2641
Joined: Mon Nov 13, 2017 3:16 pm

Re: Struggling to resurrect my +2 :-(

Post by Ast A. Moore »

zxplusplus wrote: Mon Jul 29, 2019 1:49 pm I have to admit that the repair services offered by people like mutant caterpillar are starting to look like good value!
Uh, he’s a good guy, I don’t have anything against him personally, but methinks snatching another +2 off eBay would look like an even better value. You get to keep your old machine and can use a your known-good specimen for testing (provided it works, that is).
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
1024MAK
Bugaboo
Posts: 3123
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Struggling to resurrect my +2 :-(

Post by 1024MAK »

zxplusplus wrote: Mon Jul 29, 2019 1:49 pm Since posting the video the symptoms worsened, I'm not getting the initial beeps anymore, just a screeching sound and psychedelic bars on the border!
That sounds like the ROM code is failing it’s self check. On start-up it does a checksum of the whole 16K bytes of the ROM. If this checksum test fails, it just sends a count to the ULA register that controls the border colour and the beeper sound.

If this is what is happening and it’s not a problem with the EPROM or the CPU, then you have either an address, control or possibly a data bus problem.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
1024MAK
Bugaboo
Posts: 3123
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Struggling to resurrect my +2 :-(

Post by 1024MAK »

The other thought that has gone through my mind, have you tested the +5V supply AND the 0V/GND for the important chips. By this, I mean, put the red meter probe on the +5V/VCC pin AND at the same time put the black meter probe on the 0V/GND pin of the same chip. The idea is to confirm that both the +5V power network AND the 0V/GND network are both intact. But be careful that neither probe slips...

With the large range of results, I strongly suspect a cracked PCB track, or a dry joint somewhere is helping with the cause of at least some of your troubles.

I had not tried the current release of the test ROM that I pointed you to (but had used an earlier version). So I gave the latest version a run on a Harlequin board I had to hand. That worked fine. But when I reinstated the normal EPROM chip in it, which contains the ZX Spectrum BASIC code, it got to the white screen, but instead of displaying the Sinclair copyright message, the characters were black squares! But sometimes, I got a few characters displaying properly. Other times it would not start up at all. And every time, it crashed shortly afterwards.

After looking for a bent pin, or dry joint, I found a wire that had not been properly soldered. The intermittent connection caused by the wire just touching, or not touching the plated through PCB hole caused a very confusing array of symptoms.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

Thanks Mark

I'm experiencing similar symptoms to those you've described, one boot it'll beep and get as far as the menu, another boot I'll just get random colours on the border, if I then remove the rom and cpu to reseat them I might get it back to having the 8 beeps and maybe the "ram fail" message. There's just no consistency to it which is making it far harder to understand.. the ROM is still using the original socket, but I did run along all the solder points and reflow them just incase there was a dry joint but this didn't seem to help.

The new CPU should arrive today, so I'll see what that does.

I'll also test for a functioning ground on each of the chips as you've described.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

just another mini update on this..

New CPU arrived, I put it straight in the +2 and fired it up, diagnostic rom loaded fine, I was even able to go through all of tests, ram passed, ULA passed..

And just as I was getting my hopes up it started playing up, ten minutes after fitting the new CPU and it started breaking down again, now I'm back to square one!

It seems to be eating CPU's, it killed the one from my 48k machine and looks like it's broken another brand new CPU in ten minutes or so.

What I don't understand is that the voltage readings were fine, and the CPU's not even getting hot!

I'll check to make sure there's a working negative on all the chips next..
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

sorry, just another mini update

I've just been testing some of the voltages on the chips

11 + 29 on the CPU = 4.9v

8 + 16 on the ram = 4.9v

But.. when I initially tested the ram I tested the wrong pins, I used 8+9 and got a consistent 4.9v on the inner bank but only 4.14v on the bank closest to the edge of the pcb, I'm not sure if this is relevant but thought I'd mention it :D
User avatar
1024MAK
Bugaboo
Posts: 3123
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Struggling to resurrect my +2 :-(

Post by 1024MAK »

Unless there is a short circuit, or a significant over voltage, Z80 microprocessors are fairly hardy. So I’m not convinced that your +2 is eating Z80s. I still think that somewhere you have either a crack in a PCB track, a dry solder joint, a broken plated through hole, a flaky DIL socket contact or an intermittent short (possibility a very fine solder “strand”).

Have you tested the Z80s in another machine?

Mark
Last edited by 1024MAK on Tue Jul 30, 2019 3:23 pm, edited 1 time in total.
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

You're right Mark, I've just swapped the CPU into my 48k machine and left it running for an hour, all is well in that machine.

I just find it really odd that all was well on the +2 for 10-15 mins after fitting the new CPU, then it started breaking down.. I hadn't moved it or touched anything, just left it running tests.

I'll switch my attention to checking the pcb tracks, they looked fine under a magnifying glass but I'll take another look. I'll also fit a new socket for the ROM..

Thanks again for the help, I'm not feeling very confident about fixing it at this stage but wouldn't have got this far without the help on this forum :D
User avatar
1024MAK
Bugaboo
Posts: 3123
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Struggling to resurrect my +2 :-(

Post by 1024MAK »

As well as visual inspection, print out a copy of the schematic, then grab a coloured pen. With the ZX Spectrum disconnected from everything (PSU, TV etc.) test each circuit that involves the Z80, the ROM and the ULA. You should be testing on either the continuity range (or the 200 ohm range if your meter does not have a continuity range, but this is more tiresome). Pick a chip (say the Z80), Then test to all the other components that that circuit track is supposed to go to. Each time marking your paper copy of the schematic with the coloured pen. When testing chips, test on the actual leg of the chip.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2641
Joined: Mon Nov 13, 2017 3:16 pm

Re: Struggling to resurrect my +2 :-(

Post by Ast A. Moore »

zxplusplus wrote: Tue Jul 30, 2019 3:14 pm I just find it really odd that all was well on the +2 for 10-15 mins after fitting the new CPU, then it started breaking down.. I hadn't moved it or touched anything, just left it running tests.
Thermal expansion.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

Makes sense Mark, I think it's clear at this stage that it's not the chips themselves, whilst it was up and running they all passed the diag rom tests.

It's going to be a slow process but I'll start working through the traces, fingers crossed I find something near the start of the process! :shock:
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

also, if thermal expansion is the culprit, am I correct in saying that I could check all the traces on a cold board and still not find any faults! :cry:
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2641
Joined: Mon Nov 13, 2017 3:16 pm

Re: Struggling to resurrect my +2 :-(

Post by Ast A. Moore »

zxplusplus wrote: Tue Jul 30, 2019 4:51 pm also, if thermal expansion is the culprit, am I correct in saying that I could check all the traces on a cold board and still not find any faults! :cry:
Use a good light source and a magnifying glass. Rotate the board to change the angle the light falls on it. You might still need to remove the IC sockets and inspected the vias underneath them. Reflowing all the joints with fresh solder will also help.

I’d start the inspection with the CPU socket/vias.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
1024MAK
Bugaboo
Posts: 3123
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Struggling to resurrect my +2 :-(

Post by 1024MAK »

zxplusplus wrote: Tue Jul 30, 2019 4:51 pm also, if thermal expansion is the culprit, am I correct in saying that I could check all the traces on a cold board and still not find any faults! :cry:
This is possible, yes. But often the resistance of a poor connection is higher than a unbroken and good track / conductor/ connection.

If continuity testing does not show up a problem, then the next step is to use the multimeter (on resistance) to look for short circuits / leakage paths.

If the fault then continues to be elusive, either heating (hot air) or cooling (freezer spray) different areas may help.

Then if an oscilloscope was available, it would be possible to compare signals, looking for any significant differences. In the absence of a ‘scope, a logic probe or a logic analyser can tell you the logic level of a signal and can also be valuable tools.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

Thanks both

I've ordered new sockets for the CPU and ROM, I'll replace both to firstly make sure there are no dry joints or other damage.

I'll then start working my way round the traces, starting with the CPU and ROM.

My multimeter has a continuity mode which should help :-)
zxplusplus
Drutt
Posts: 19
Joined: Thu Jul 25, 2019 10:48 am
Location: Northants, UK

Re: Struggling to resurrect my +2 :-(

Post by zxplusplus »

quick update

I printed off the schematics and zoomed in on the CPU, ROM, PCF1306p area. I then worked through all of the connections between these chips (using the leg of the chips), all connections are fine on a cold board.

I'll run it for 20 mins or so and then do the same thing again..
Post Reply