ZX-81 Corrupted text display

Discussions about Sinclair ZX80 and ZX81 Hardware
User avatar
1024MAK
Posts: 5118
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: ZX-81 Corrupted text display

Post by 1024MAK »

I would not rush and start guessing and desoldering chips yet.

First off, if the keyboard membrane is good, try this (because you can’t properly read what you are entering, I’ve listed it as the keys to press):

1 F A [SHIFT]&L 1 [SHIFT]&4 20 [NEWLINE]

2 P A [NEWLINE]

3 N A [NEWLINE]

R [NEWLINE]

Just before pressing NEWLINE for the last line, the screen on a normal working ZX81 should show:
Listing
Listing
After pressing NEWLINE, the screen on a normal working ZX81 should show:
Program output
Program output
Can you take photos and then post them on here of what you actually get please.

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.
Jelvis
Posts: 14
Joined: Thu Nov 16, 2023 5:40 pm

Re: ZX-81 Corrupted text display

Post by Jelvis »

Thanks for the suggestion, I did consider that while testing yesterday but none of the little loops came to mind (it's been 40 years lol) and I was a little time limited. I'll try this on Monday when back at work and post results.
User avatar
XavSnap
Posts: 1941
Joined: Sat May 10, 2008 4:23 pm
Location: 'Zx81 France' Fb group.

Re: ZX-81 Corrupted text display

Post by XavSnap »

Image
BadUDG.jpg
"CLEAR " ...

The UDG table seem to be in the right memory offset.
Char. offset+0 : NOK ("00000000")>("00000100")
Char. offset+1 : NOK ("00000001")>("00000101")
Char. offset+2 : NOK ("00000010")>("00000110")
Char. offset+3 : NOK ("00000011")>("00000111")

Char. offset+4 : OK ("00000100")
Char. offset+5 : OK ("00000101")
Char. offset+6 : OK ("00000110")
Char. offset+7 : OK ("00000111")

------------------------------

Next Char. offset+0 : NOK ("00001000")>("00001100")
Next Char. offset+1 : NOK ("00001001")>("00001101")
Next Char. offset+2 : NOK ("00001010")>("00001110")
Next Char. offset+3 : NOK ("00001011")>("00001111")

Next Char. offset+4 : OK ("00001100")
Next Char. offset+5 : OK ("00001101")
Next Char. offset+6 : OK ("00001110")
Next Char. offset+7 : OK ("00001111")

The line A2 on the ULA (?) seem to be dead, always on and hight level.
The ROM/RAM A2 address line seem ok, the BASIC monitor is loaded and the D_File is ok.

:oops:
Xavier ...on the Facebook groupe : "Zx81 France"(fr)
Jelvis
Posts: 14
Joined: Thu Nov 16, 2023 5:40 pm

Re: ZX-81 Corrupted text display

Post by Jelvis »

OK, just got chance to run this. My results:

All ran as normal and I saw it gradually counting down the page, albeit with the corrupted characters.
Attachments
IMG20231127130953.jpg
IMG20231127131803.jpg
User avatar
1024MAK
Posts: 5118
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: ZX-81 Corrupted text display

Post by 1024MAK »

Okay, so that confirms that the Z80 processor, RAM and ROM are all working okay.

So it's either a faulty ULA, or the address line to the ULA that XavSnap is talking about has a problem. Most likely open circuit, as the operation of the ROM is not being affected (as the Z80 is running BASIC okay).

So test ULA pin 3 (A2) to ROM pin 6 using the 200 ohm resistance range (with the power off).

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.
Jelvis
Posts: 14
Joined: Thu Nov 16, 2023 5:40 pm

Re: ZX-81 Corrupted text display

Post by Jelvis »

Thanks for the reply. I've just checked, less than 0.4 Ω so looking like the ULA (don't get a lot less than that shorting the leads on the Fluke). I know genuine one's are in short supply. Is one of the modern ones that 'copy' the 2C210E ula with a few bells and whistles a good choice for replacement?

Mike
User avatar
1024MAK
Posts: 5118
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: ZX-81 Corrupted text display

Post by 1024MAK »

Well, yes, the modern ULA replacement modules are good replacements. Unfortunately they are not cheap. The alternative would be to buy another ZX81.

Some final checks and tests… it’s also worthwhile testing the other low numbered address lines (A0 to A3) for continuity in case something weird is happening. And testing between each address line and the adjacent address line, plus to the +5V rail and then the 0V rail on resistance.

If you have an oscilloscope, it’s worthwhile also seeing what the waveforms look like on the low numbered address lines at the ULA.

Why all this testing when we already suspect the ULA? Well, aside from not wanting to destroy a working ULA, as yours doesn’t look to be in a socket, you need to decide how you are going to remove it.

If you have the tools and are good at desoldering 40 pin DIL/DIP chips, that’s fine. Otherwise, I recommend cutting each and every pin of the chip with small electronic wire cutters (snips). Then each pin can be removed on it’s own. As that makes removal far easier and significantly reduces the likelihood of PCB track/pad damage.

PCB PCB track/pad damage (including damage to the through-hole plating) is a very real risk with PCBs of this age. Never, ever, use force to remove a pin. If the solder is fully molten, a pin should come out easily.

Once the old ULA is out, do carefully inspect the PCB tracks and pads. Then fit a socket.

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.
Jelvis
Posts: 14
Joined: Thu Nov 16, 2023 5:40 pm

Re: ZX-81 Corrupted text display

Post by Jelvis »

I don't think I've removed a 40 pin ic since the late 80's (my main era of component level repair) and all the desoldering capabilities I have access to these days are 'simple' hot air aimed at surface mount these and so I quite understand trying to be as 100% as possible before opting on the 'nuclear' option and doing a few more tests.

I've done the dc checks, everything between address lines is in the meg-ohm range as they are to the 0v and 5v lines with the exception of A5 which is about 4KΩ. I quickly scoped all the address lines. Sorry digital isn't my forte but the signals all looked similar and triggered the scope well apart from A5 and A0 which were only about 1/3 of the amplitude. I've checked the A5 line around the board as far as I can, all looks good but I'd love to be able to see where the tracks run under the IC's just to be on the safe side.

I'll definitely use a socket for the replacement ULA. Once I get a bit more time I'll try a few legs with my iron and solder sucker but I think with the thru-plating it may be a case, as you say, of snipping the legs for removal.

Once more, thanks to you and everyone else for their help getting this far.

Mike
Jelvis
Posts: 14
Joined: Thu Nov 16, 2023 5:40 pm

Re: ZX-81 Corrupted text display

Post by Jelvis »

Just an update.

Had some time today to have a go at removing the ULA. Managed to get it out without resorting to chopping legs with solder sucker and some braid. It took me about 40 minutes working slowly and carefully, would have been faster and easier with more suitable tools and the fresh eyeballs I had 40 years ago. Now off to clean up the board and find a replacement.

IMG20231201135753.jpg
Moggy
Posts: 3267
Joined: Wed Jun 18, 2008 2:00 pm

Re: ZX-81 Corrupted text display

Post by Moggy »

Although we can only see the top side, that looks to be a nice bit of de-soldering! :o

Before you do anything else please, as you say, get a socket in place then you can easily test any ULA's you come across.

Looking forward to the outcome of this one. :D
Post Reply