ZX+ lower ram diagnostic help

For experts to discuss very technical stuff and newbies to ask why the Spectrum they bought off ebay doesn't work.
Jayhay
Berk
Posts: 8
Joined: Sat Jan 05, 2019 12:23 pm

Re: ZX+ lower ram diagnostic help

Post by Jayhay » Sun Jan 13, 2019 12:40 pm

Hi guys, again - thanks for all the help.

So I replaced IC11 and it's done something!

Image

The vertical red lines against black are gone and instead we have this pink striping thing! You can see the copyright message, though and it responds to key presses, though it's not clear.

Here is a video of it in action and me pressing the reset button:


We're getting there! Does this make a diagnosis any easier? Thanks again guys, loving this repair process!
0 x

User avatar
Ast A. Moore
Dynamite Dan
Posts: 1134
Joined: Mon Nov 13, 2017 3:16 pm

Re: ZX+ lower ram diagnostic help

Post by Ast A. Moore » Sun Jan 13, 2019 7:23 pm

This is interesting. So Bit 5 is now good, and the computer passes the boot test. Moreover, the length of the test suggests that it sees all 48K of RAM (although, it doesn’t mean that the RAM is not faulty).

The magenta stripes still throw me back to my original suspicion that something is not quite right with contention or the ULA itself. However, the video output is perfectly clean for the most part of the boot test. The only related instruction I can think of is IM 1, which occurs not long before the screen is cleared and the copyright messages is displayed. I wonder if changing it back to IM 0 will have any effect.

Here are a couple of simple things you could do and observe and describe (or, better yet, take a video of) the results.

1. Enter and execute the NEW command after a reset. Simply hit the A key and then press ENTER.


2. This is a little more convoluted, but would be helpful as well. You’ll need to enter the following short BASIC program. I realize that entering text is difficult, because you can hardly see anything, but I’ll help you with the appropriate keypresses.

Code: Select all

10 POKE 40000,237
20 POKE 40001,70
30 POKE 40002,243
40 POKE 40003,201
50 RANDOMIZE USR 4e4
Typing this on a Plus keyboard should be pretty straight forward. The POKE keyword is the O key, RANDOMIZE is T, and to type the USR keyword, you press EXTENDED MODE, release it and type L.

The last line could be entered directly at the command prompt without the line number. It will execute as soon as you press ENTER

3. A variation of the above:

Code: Select all

10 POKE 40000,237
20 POKE 40001,70
30 POKE 40003,201
40 RANDOMIZE USR 4e4
This should bring you back to BASIC.

I wonder why the stripes are purple and not black/gray. Contention might cause the ULA snow, but why would the ULA read an attribute value that is not present anywhere in screen memory is still a mystery to me.
0 x
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.

Jayhay
Berk
Posts: 8
Joined: Sat Jan 05, 2019 12:23 pm

Re: ZX+ lower ram diagnostic help

Post by Jayhay » Mon Jan 14, 2019 6:36 pm

Hey there, thanks for the reply.

So, here is what happens when do the "new" command:
https://drive.google.com/file/d/12Jdy4C ... p=drivesdk

Then I get screens like this after every reset:
Image

But if i disconnect the power, I can get back to distorted copyright screen.

Here are 2 examples of me trying to type the basic code in:
https://drive.google.com/file/d/11YM2hr ... p=drivesdk

https://drive.google.com/file/d/1UHjh5v ... p=drivesdk

It doesn't seem to reliably reset either. Just goes to a black screen.

Here is something else:
Image

The case says 9v DC but the psu gives me 12v DC. It is a spectrum psu.

Its very strange, I hope it's not dead.

Thanks again for any and all help!
0 x

User avatar
Ast A. Moore
Dynamite Dan
Posts: 1134
Joined: Mon Nov 13, 2017 3:16 pm

Re: ZX+ lower ram diagnostic help

Post by Ast A. Moore » Mon Jan 14, 2019 8:09 pm

The Spectrum PSU is unregulated. It outputs anything from 11 to 14V (or thereabouts). When loaded, its output will reduce somewhat. There’s a 7805 voltage regulator inside the Speccy that will bring the input voltage down to 5V, dissipating the rest as heat. Ideally, you’ll want to replace the PSU with a modern switch-mode regulated power supply, but for the time being, that’s not an issue.

It seems like your RAM issues are’t over yet. The odd part is that it looks like it’s still Bit 5 that gets intermittently stuck high (white paper is 00111xxx, while magenta is 00011xxx). Something must be pulling it high. Now, why the ULA is reading it only at certain times of the RAM test routine is still a mystery. Perhaps the issue is with one of the address multiplexors, as well.

We’ll start with the upper RAM chip that stores Bit 5, and that is IC20. Remove it and see what happens.
0 x
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
Manic Miner
Posts: 472
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: ZX+ lower ram diagnostic help

Post by 1024MAK » Wed Jan 16, 2019 10:24 pm

Ast A. Moore wrote:
Mon Jan 14, 2019 8:09 pm
We’ll start with the upper RAM chip that stores Bit 5, and that is IC20. Remove it and see what happens.
Or use the disable upper RAM trick that I linked to in an earlier post ;-)

When fault finding, remember that all electronics are actually analogue. It’s just that in digital systems only two voltage ranges are regarded as valid. So if the voltage on the data bus is in the middle or near to a logic threshold, sometimes it may read high and sometimes it may read low...

Mark
0 x

User avatar
Ast A. Moore
Dynamite Dan
Posts: 1134
Joined: Mon Nov 13, 2017 3:16 pm

Re: ZX+ lower ram diagnostic help

Post by Ast A. Moore » Wed Jan 16, 2019 11:36 pm

1024MAK wrote:
Wed Jan 16, 2019 10:24 pm
So if the voltage on the data bus is in the middle or near to a logic threshold, sometimes it may read high and sometimes it may read low...
It could be something more serious. If a RAM chip creates an intermittent dead short to either level, then simply disabling it may not clear the fault.
Since replacing the lower RAM IC storing Bit 5 moved things forward a little, it makes sense to suspect that another IC on the same data line went tits up at the same time (plus, it’s still the magenta paper that gets stuck intermittently). So, either the newly replaced IC 11 is also faulty, the upper RAM IC jams D5, a multiplexor has gone berserk, or the ULA is doing some weird stuff. (Oh, and, of course, it might be just the gremlins.) :)
0 x
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
Manic Miner
Posts: 472
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: ZX+ lower ram diagnostic help

Post by 1024MAK » Thu Jan 17, 2019 7:37 am

Ast A. Moore wrote:
Wed Jan 16, 2019 11:36 pm
It could be something more serious. If a RAM chip creates an intermittent dead short to either level, then simply disabling it may not clear the fault.
Yeah. But if the “upper” DRAM chips are soldered in, it’s worthwhile trying the disable trick, just to see if it does have any effect. Because if it does, it extends our knowledge of what may be happening.

If you have a spare known good ULA, it is also worthwhile swapping it around. Even better if you have another ZX Spectrum board with the same ULA so that you can try the suspect ULA in a known good working board. Or even in a another issue board.

Speaking of which Jayhay, what version ULA is in your board?

Mark
0 x

User avatar
Ast A. Moore
Dynamite Dan
Posts: 1134
Joined: Mon Nov 13, 2017 3:16 pm

Re: ZX+ lower ram diagnostic help

Post by Ast A. Moore » Thu Jan 17, 2019 8:51 am

1024MAK wrote:
Thu Jan 17, 2019 7:37 am
But if the “upper” DRAM chips are soldered in, it’s worthwhile trying the disable trick, just to see if it does have any effect. Because if it does, it extends our knowledge of what may be happening.
True, but hey, it’s a DIP 16 package. A minute of quality time with a solder sucker and you’re good. ;)
1024MAK wrote:
Thu Jan 17, 2019 7:37 am
Speaking of which Jayhay, what version ULA is in your board?
As per his picture, it’s an E-7, which is correct for a 4S board (well, ULAs are downward compatible anyway). Speaking of boards, I just noticed it has a Zilog Z80. I thought 48K machines virtually never got a Zilog CPU. I wonder if this is a 4S thing.

Also, I think we need to tag @Jayhay, if we want to draw his attention.

P.S. Oh, and I just remembered that the 4S board is more similar to a 3B than a 4A. It doesn’t use two spare inverters on IC24 for the ULA’s RAS signal, so IC24 can also be removed for testing.
1 x
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.

Jayhay
Berk
Posts: 8
Joined: Sat Jan 05, 2019 12:23 pm

Re: ZX+ lower ram diagnostic help

Post by Jayhay » Sun Jan 20, 2019 6:52 pm

Hey guys, thanks for the advice and feedback. I will try disabling first, then Desoldering. I just haven't had a chance to look at anything all week, it's been a busy one!
0 x

Jayhay
Berk
Posts: 8
Joined: Sat Jan 05, 2019 12:23 pm

Re: ZX+ lower ram diagnostic help

Post by Jayhay » Sun Feb 24, 2019 2:54 pm

Hi everyone,
Sorry for the long time before coming back - it's been a hell if a month.

Anyway - I tried disabling the upper ram by connecting pin 5 to the positive rail and powering up.

And it didn't start up at all. It just became completely unresponsive. Powering up didn't work, resetting, nothing. So I left it for 5 minutes and it started up again.

Tried again and it started fine, but didn't make any difference.

Again, sorry for the delay and I really appreciate any thoughts...
0 x

Post Reply