• Please review our updated Terms and Rules here

IBM 5160, help repairing 64-256 motherboard with intermittent issues

hkzlab

Member
Joined
Jun 22, 2012
Messages
16
Location
Italy
Greetings,
I have an IBM 5160 64-256k malfunctioning motherboard here that is giving me quite the headache.
First of all, I don't know the history of this mobo, as I got it in a box of junk at a flea market years ago. Turns out there was a pretty good reason for it to be there.

Conditions when I found it:
- No expansion cards with it
- 128k of ram fitted (board half full)
- No NPU
- No evident bending or scratches on top or back
- C56 tantalum capacitor missing. Remains of the leg showed it was cut away. Blown up in the past, probably

As I suspected an issue with tantal caps in the past, I desoldered all of them and replaced with MLCC caps I had around. 1uF/25v. Also added a cap where C56 should have been.
I then checked the power connector for shorts. None were found, so I powered it up.

As I side note: I use my own adapter together with a known working PicoPSU to power boards I'm testing. The adapter takes care of providing -5V.

As a first test I tried the "Minimum diagnostic configuration" described on minuszerodegrees. Got the beeps notifying me of the missing video card. Good.
I fit my clone CGA card, adjusted the switches, powered up and... nothing: No beeps, no image.
Ok then, time for a run with the Landmark diagnostic ROM to see what happens... and this is where the real odyssey began.

- Burned an AM27C256 EPROM, 200ns access time. Fit it into U18.
- No extra cards installed except CGA adapter
- No keyboard connected

The diagnostics started. Most of the time I got them brutally locking up at the "Interrupt level 0" test (often with the speaker emitting the hi/lo beep from the landmark tests, continuously), but not always. I also got a few runs going through all the tests (obviously failing keyboard, ram above 128k and floppy controller/read).

Ok, as the docs mention that the interrupt level 0 test involve the 8259, the 8253, the 8288, and the CPU, I tried replacing all of them, one at a time, in that order (obviously desoldering and fitting sockets for soldered in ICs. No tracks or vias were harmed!). No dice, same issue...
While at it, as I had an 82C37 around, I tried that too. Nothing.

As the 8284 was already socketed, and I had a few CMOS spares around, I wondered why not try that too... was getting desperate.
I replaced the 8284 with a CP82C84, also had to remove R1 and R2 and fit 33pF caps in their place (required by CMOS 8284, see here http://www.malinov.com/Home/sergeys-projects/xi-8088), and this is where things got interesting:
As soon as the 8284 was replaced, I never got the lockup at interrupt 0 again, and now most of the time the first round of checks complete, locking up the computer (or resetting it) around the 2nd and 3rd loop of tests.
Now the errors I usually get are the following:
- Lockup at the floppy read phase, often including screen corruption
- Resets or screen losing signal at floppy controller test/read phase
- Very rare, errors on the first 16k, often different bits

I tried shuffling the RAM chips, removing the second bank, removing U9 (the buffer on ram data lines) and fitting a new one. Nothing: same issue.
Then I decided to remove the video card and just go blind with the acustic error codes: the tests ran longer, around 30 minutes before locking up (and they restarted abnormally a few times in these 30 minutes).

So, starting to get a little out of ideas here. I hate intermittent issues.
The only thing left to do is performing the 1mb mod, so I get to replace the RAM decoding PROM and fit new chips.

Anyone got ideas on what else it could be tested/investigated?
 
From time to time I also get memory refresh errors, and in rare occurrences the tests also lockup at the very first step, when it validates the CPU logic.
Even though the CPU socket looked clean, I replaced it with a turned pin one, but to no avail.

I decided to check if replacing the RAM decoding prom would help, so I performed the 1Mb mod as described here: http://www.vcfed.org/forum/showthre...grade-mod-for-IBM-PCXT-5160-and-Portable-5155
The issues remained.
 
I think the original tantalum capacitors were 10uf ... maybe you don't have enough capacitance to keep things smooth? Also, I don't think you need the -5 to boot, so maybe try without it, just to eliminate other possible sources of electrical noise, etc. My first impression based on your description is maybe this is a capacitance/electrical noise problem? How clean is the power supply output you are using? (Can you see it on a scope? How clean is the clock??)
 
Also curious if your CPU is by chance known to be good, ie: tested in a known good working board??

Ah first of all, I just reread my post. I wrote 1uF/25v for ceramic caps. It was a typo: I actually used 10uF/25v, lost a 0 :)

Regarding the power supply: it's clean, tried on a scope and no significant ripple (tested at the board) on 5v at a 500mV per division. Still, I tried multiple power supplies with the same result.

The clock looks decent, there might be that slight overshoot, but I think it's tied to the suboptimal connection to ground I made... See attached picture. I still have the 82C84 in the board. This is taken from pin 8.

The CPUs. I tried 4 of them:
- Original Intel 8088
- AMD 8088
- NEC V20
- Harris 80C88

The last two were tested on other boards: they worked fine. All showed the same symptoms.

EDIT: Forgot to add that I also tested the delay line for the RAM with the scope. Seems to delay the signal just fine at the 60 and 100ns taps.
 

Attachments

  • clock_5160.jpg
    clock_5160.jpg
    54.9 KB · Views: 1
Last edited:
Any broken or bent wipers in the CPU socket? I had a flaky board once that was due to a bad cpu socket. Seems like you've covered it pretty well, so hmmm
 
Any broken or bent wipers in the CPU socket? I had a flaky board once that was due to a bad cpu socket. Seems like you've covered it pretty well, so hmmm

Yep, I triple-checked the CPU socket. In the end I even replaced it with a turned pin one, just in case there was an invisible fracture. But that changed nothing.

I would say that there is a micro fracture in a solder joint or a trace, but I get the same random issues if I let the board on for hours, and slight pressure on random zones of the board changes nothing...
 
Hmm, no Idea if my previous response did not yet pass through moderation or was lost...

Anyway, yeah, checked the cpu socket, no issues found. Replaced it nonetheless without any gain.

Today the situation got worse, apparently now diagnosics consistently fail at the first 16kb of ram. I tried Ruus diagnostics too, and those too stops at the first 2kb of ram.
 
Cold solder joints? Splatter bridge? Hmmm

Hmm, the board is quite clean, splatter bridge is improbable, but will triplecheck tomorrow.
Cold solder joints or cracks are a possibility and much harder to exclude. Even though slightly flexing the board does not improve or make the issue worse...

I'm starting to consider the replacement of glue logic in the memory subsystem...
 
Good news everyone!
Seems I found the culprit of the problem (of THIS problem, at least): U24, a 74LS00. The /RAMADDRSEL was good enough for my logic probe, but showed weird levels on my scope. Pity I did not think of taking a screenshot of that.
Anyway, I cut it away, socketed and replaced it. I'm now at the 7th run of the landmark diagnostic without issues (Ruus diagnostic is passing too).

Further use of the board will probably uncover other issues, but now I'm celebrating :)
 
Back
Top