ISSUE 2 - memory problem

Post Reply
RobG
Posts: 13
Joined: Wed Jul 08, 2020 10:01 pm

ISSUE 2 - memory problem

Post by RobG »

I have this 48k ISSUE 2 board which was fixed before I bough it.
One 16k chip and one 32k was replaced (all memory chips are soldered on that board.)
All voltages are fine, but when it starts, I can only see black square (no random squares.)
I figured high ram is bad, so I shorted IC23's pin 5 to 5V and powered it up. Spectrum works as a 16k machine, without any problems.
One of the 32k chips was not the right kind (all 32k chips are NL3, the replaced one was NL4,) so I have replaced it.

I wrote a short program to POKE and PEEK memory locations from 32768 to 65535, values 255 and then 0 and later 170 and 85, just for kicks,) and it works as expected. Because of that, I am guessing memory itself is fine. I also wrote a program to verify all memory while writing to each address, just to make sure each address line worked correctly.

When I boot as 48k, still the same black square. Any ideas how to proceed? What else could be bad? IC23-IC26? Looks like it fails memory test on boot, but it works when test is bypassed.
Last edited by RobG on Mon Jul 13, 2020 5:05 pm, edited 1 time in total.
User avatar
1024MAK
Posts: 5103
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: ISSUE 2 - memory problem

Post by 1024MAK »

When you say black square, do you mean that the border is white and the the whole of the text and graphics area is black?

The ROM code does not do a RAM functional test as such. The objective of the ROM test is to work out how much RAM is fitted.

During the test, you should see thin vertical red lines on the black background briefly (don’t blink or you’ll miss it).

As a next step, I recommend using a machine code RAM test program. Occasionally DRAM chips continue working but their timing no longer meets the required specifications. This may be the cause of trouble in your machine.

This site Zx-Diagnostics has code that can run from ROM/EPROM and also a version with reduced functionality that can be loaded from tape into the lower RAM.

Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp

:!: Standby alert :!:
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer later in the year.
RobG
Posts: 13
Joined: Wed Jul 08, 2020 10:01 pm

Re: ISSUE 2 - memory problem

Post by RobG »

Thanks Mark, timing is one thing that has crossed my mind.
There are 3 4164 chips and 5 4532, so if test ROM (which I just bought) doesn't give me answers, I will replace the remaining 5.

And yes, black square on a white background.

UPDATE: I hooked up my logic analyzer to the slot and it appears my memory test is not correct. After starting as 16k and then POKEing to high ram, A15 is low, so not sure which address is used. When I start with 48k, I can see A15 is changing. Will have to do more testing I guess.
Last edited by RobG on Thu Jul 09, 2020 4:32 pm, edited 1 time in total.
User avatar
1024MAK
Posts: 5103
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: ISSUE 2 - memory problem

Post by 1024MAK »

Do you mean A15 on the edge-connector / expansion port?

A15 comes from directly from the Z80. The BASIC POKE command and the PEEK function can access the whole 64k memory map regardless of anything else (if the upper RAM is disabled it obviously will ignore any accesses). Hence A15 will go high when BASIC POKEs or PEEKs any address above 32767. It will be predominantly low though, as the vast majority of the time the Z80 will be running ROM code, reading / writing to the screen and system variable area and reading the BASIC program.

If the upper RAM is disabled, PEEKing an address above 32767 will either return 255 if the ULA is not currently reading screen data. If the ULA is reading screen data, then instead a PEEK will return the value read by the ULA.

Does this machine have the original Z80 or has a new Z80 been fitted?

Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp

:!: Standby alert :!:
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer later in the year.
User avatar
1024MAK
Posts: 5103
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: ISSUE 2 - memory problem

Post by 1024MAK »

Oh, since I forgot to welcome you, let me do that now...

Welcome on board Rob!

:D :D :D

Welcome to Sinclair ZX World :D

Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp

:!: Standby alert :!:
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer later in the year.
RobG
Posts: 13
Joined: Wed Jul 08, 2020 10:01 pm

Re: ISSUE 2 - memory problem

Post by RobG »

Thank you! This is the first time I am playing with ZX Spectrum since I sold my back in 1985. I bought one 15 years ago when nostalgia hit, and then another one few weeks ago. I fired them both up for the first time just a few days ago (after recapping.)

I am starting my tests from scratch since I think I made some wrong assumptions before. So, my bad machine has 3 new chips, all 4164 200ns.
1. As is, when starting, I see a black screen with white border.
2. When I pull out one of the new chips (any one,) ZX starts as 16K and everything is fine.
3. New chips work OK in another ZX.
4. ULA works OK in another ZX.
5. With the black screen, there's constant activity in high RAM, read and write, it's like it is stuck in the loop. I will post details later on.
6. After starting with upper RAM temporarily disabled, or with one chip pulled out, I can read and write to upper RAM.

In the ROM, the routine to determine RAMTOP is following:
1. Write 02 to every location from 4000 to FFFF
2. From 4000 to FFFF, decrement memory content by one, twice
3. If any of the those fail, decrement last address and use as RAMTOP

My next step is to verify signals that control RAM chips.
RobG
Posts: 13
Joined: Wed Jul 08, 2020 10:01 pm

Re: ISSUE 2 - memory problem

Post by RobG »

Captured all that's going on during boot up and everything looked fine. There are few weird reads/writes, but my working Spectrum does the same thing.
The next step was to replace the remaining five 4532 chips.
Well, everything works now! Awesome!
User avatar
1024MAK
Posts: 5103
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: ISSUE 2 - memory problem

Post by 1024MAK »

Well done! :D 👍

Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp

:!: Standby alert :!:
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer later in the year.
Post Reply