• Please review our updated Terms and Rules here

"Dead" IBM PC 5160 (256k-640k) motherboard

jesolo

Experienced Member
Joined
Nov 23, 2017
Messages
62
Location
South Africa
I recently acquired an IBM 5160 motherboard (that the seller sold as "non working") and I'm trying to see if I can bring it back to life.
So far, I've ruled out the power supply (I used another one just to be sure), the voltage lines (tested the +5v, -5v, +12v & +12V with a multi meter and all within specs) and also the memory in bank zero (which I swopped out with Bank 1 & even with the memory from another motherboard).
Motherboard is not making any beeps if I test with the "Minimum Diagnostic Configuration" (http://www.minuszerodegrees.net/5150_5160/MDC/minimum_diag_config.htm).
What else could be the problem? Only thing I can think of now is that one of the BIOS ROM chips are faulty. My BIOS revision is the last one from 1986. If the BIOS ROM chips are faulty, would this cause the PC not to boot at all?
 
Last edited:
My steps at this point would be:
- check for RAS on pin 4 of any DRAM chip with a logic probe (cheap) or scope - if it's pulsing, then the basics of the motherboard are running (optional, only bother if you have one laying around)
- program an EPROM with the Supersoft Diagnostics and see what it says (or even starts at all).

Others will know more detail about the startup process and required components, but that's the process I always follow. If those don't turn out as expected, then working backwards from there.
 
Only thing I can think of now is that one of the BIOS ROM chips are faulty.
Of course, the failure of any one of many chips can cause the symptom.

My BIOS revision is the last one from 1986. If the BIOS ROM chips are faulty, would this cause the PC not to boot at all?
Yes. For the 1986 dated BIOS revisions, failure of either BIOS chip will produce the symptom.
 
Just an update of my progress thus far:
I burned a copy of the "Supersoft Diagnostics" ROM to a 27C512 EEPROM (by making a "duplicate" copy of the ROM contents) and inserted this into U18.
It started to boot up and ran the Diagnostics. It failed at the "16K Critical Memory Region" as well as also failed the System Memory to 40000 test (since I only populated Bank 0).
After a number of failed attempts to locate the faulty memory, I decided to swop out all the memory with the memory from another XT PC that I know is working (also 41256 DRAM chips).

Initially, I only populated bank 0 and received a "16K Critical Memory Region" again (only at address 05080) but, this time it successfully passed the "System Memory to 40000" test but, failed the "Slow Refresh to 40000" test.
I then populated Bank 1 as well and this time it passed the "16K Critical Memory Region" but, failed the "Memory Refresh" test and, then again the "Slow Refresh to 80000" test (since I've now populated both Bank 0 & Bank 1).

According to the manual, a "Memory Refresh" failure could indicate a problem with the 8253 Timer channel one or the 8237 DMA controller channel 0.
Since both of these passed the initial test (before reaching the "16K Critical Memory Region" test), which one of the two is the likely cause or, should I be looking elsewhere for the fault?
 
Last edited:
From what I have gleaned of the tests:

16K CRITICAL MEMORY REGION

For each address within the first 16K, write a byte to the address, wait for I/O delays, then read the byte straight back.
By reading the byte straight back, this test does not rely on the dynamic RAM refresh circuitry working.

MEMORY REFRESH test

A test of the ability of the dynamic RAM subsystem to hold its contents 'long term' (10 seconds), when the refresh circuitry is operated at the normal refresh spec of about 15 microseconds per row (what the IBM BIOS operates the refresh circuitry at).

This test uses the first 16K or RAM, and so if the earlier 16K CRITICAL MEMORY REGION failed, I see that invalidating the results of this MEMORY REFRESH test.

SLOW REFRESH test

This is the MEMORY REFRESH test, excepting that the refresh circuitry is operated at well beyond its refresh spec. In most cases, the RAM chips used in 5150/5160 motherboards will tolerate that. If this was the only (repeat: only) test failing on one of my motherboards, then I would say to myself, "All of my RAM chips are within spec (which is what the IBM BIOS runs them at), but one or more cannot be pushed significantly beyond spec. Maybe I will, or maybe I will not, do anything about it."

If the earlier MEMORY REFRESH test is also failing (which runs the refresh circuitry within the RAM's refresh spec), it is expected that the SLOW REFRESH test will also fail. [If I cannot throw a ball 5 meters, why would I be able to throw it 10 meters?] I am puzzled as to why the authors of the Supersoft diagnostics run the SLOW REFRESH test if the MEMORY REFRESH ('normal' refresh) test fails.

Initially, I only populated bank 0 and received a "16K Critical Memory Region" again (only at address 05080) but, this time it successfully passed the "System Memory to 40000" test but, failed the "Slow Refresh to 40000" test.
Is that consistent - identical symptoms whenever only bank 0 is populated ?
Or do you get different results each time ?

I then populated Bank 1 as well and this time it passed the "16K Critical Memory Region" but, failed the "Memory Refresh" test and, then again the "Slow Refresh to 80000" test (since I've now populated both Bank 0 & Bank 1).
Is that consistent - identical symptoms whenever only banks 0 and 1 are both populated ?
Or do you get different results each time ?

According to the manual, a "Memory Refresh" failure could indicate a problem with the 8253 Timer channel one or the 8237 DMA controller channel 0.
Since both of these passed the initial test (before reaching the "16K Critical Memory Region" test), which one of the two is the likely cause or, should I be looking elsewhere for the fault?
Ignore the SLOW REFRESH test for now (because it pushes the system out of spec).

You have put known good RAM chips into the system. If you were always seeing the 16K CRITICAL MEMORY REGION test passing, and always seeing the MEMORY REFRESH test failing, then I would see that as an indicator that the refresh circuitry is faulty.

You are (sometimes) seeing failure of the 16K CRITICAL MEMORY REGION test. It suggests to me that there is something else going on. If the symptoms are inconsistent, some things that come to mind are:
* Bad RAM chips (which you have disproved)
* Bad PSU (which you have disproved)
* RAM chip sockets that have oxidised contacts
* Bad RAM support circuitry: filter cap/s next to the RAM chip sockets
* Bad RAM support circuitry: other
 
Thank you for the feedback regarding the different tests - that provided a lot more insight into the meaning of each test and what you said makes sense
Is that consistent - identical symptoms whenever only bank 0 is populated ?
Or do you get different results each time ?

For most of the time, I received identical symptoms. When I also populated bank 1 for the first time, the "16K Critical Memory Region" error did not display but, did come up intermittently.
I did, as a check, swop out all the RAM chips in bank 0 with those in bank 1 and still received the "16K Critical Memory Region" at the same address (05080).


Is that consistent - identical symptoms whenever only banks 0 and 1 are both populated ?
Or do you get different results each time ?
For most of the times, that was the case but, I'd have to say that it is not always consistent.

In other words, based on my analysis and your feedback, I would say that the "16K Critical Memory Region" test does not always pass - if it does pass that test (since the Diagnostics will not proceed if it fails that test), the "Memory Refresh" test does always fail.


You have put known good RAM chips into the system. If you were always seeing the 16K CRITICAL MEMORY REGION test passing, and always seeing the MEMORY REFRESH test failing, then I would see that as an indicator that the refresh circuitry is faulty.

You are (sometimes) seeing failure of the 16K CRITICAL MEMORY REGION test. It suggests to me that there is something else going on. If the symptoms are inconsistent, some things that come to mind are:
* Bad RAM chips (which you have disproved)
* Bad PSU (which you have disproved)
* RAM chip sockets that have oxidised contacts
* Bad RAM support circuitry: filter cap/s next to the RAM chip sockets
* Bad RAM support circuitry: other
Based on the above, I will probably have to investigate the RAM chip sockets but, I have so many times swopped the memory out that it should by now have resolved that issue? Or, are you referring to the socket itself where it is soldered to the motherboard?
It's quite plausible that the filter caps next to the RAM chip sockets could be faulty but, if I already tested the voltage lines (with the PSU connected to the motherboard) and everything was within specifications. Could this then still means a faulty capacitor? If I'm always receiving an error at address 05080, which socket would be the likely one to look at?
What other RAM support circuitry could one look at?

What about the SN74LS158N chip? I read here (http://www.minuszerodegrees.net/5160/motherboard/5160_motherboard_revisions.htm - refer note 1) that when you want to modify the 64-256KB motherboard's memory, one of the steps is to add an SN74LS158N chip.
I'm not sure whether a failure of the SN74LS158N multiplexer chip could cause such a symptom in bank 0?
 
Last edited:
Please confirm a couple of things, just to confirm that the testing is valid:

1. In your chip swapping, are you maintaining 256Kbit chips in banks 0/1 and 64Kbit chips in banks 2/3 ?

2. The diagnostics require 640K of RAM. Even if you adjust the 5160's SW1 switches to enable only some of the banks, the diagnostics will still test 640K. Do you have all banks populated, and the SW1 switches set to enable all four banks ?

If I'm always receiving an error at address 05080, which socket would be the likely one to look at?
Being only an address, the best it can do is point to a bank of RAM.
05080 hex is 20.125K, which on a 256-640K motherboard, resides in bank 0.

The screen also shows the bit/s in error, and from that, the chip/s in the bank can be identified.

And being 20.125K, the reported failure at that address cannot be associated with the 16K CRITICAL MEMORY REGION test, unless there is a bug in the diagnostics.

(since the Diagnostics will not proceed if it fails that test)
Are you sure about that? I pulled out my 256-640K motherboard, removed a chip from bank 0, then ran the diagnostics. As I expected, the 16K CRITICAL MEMORY REGION test failed, however, the diagnostics then skipped a bunch of tests, and proceeded to check the remainder of 640K.
 
1. In your chip swapping, are you maintaining 256Kbit chips in banks 0/1 and 64Kbit chips in banks 2/3 ?
Yes, I am. Although, at some point, I also tried to just populate bank 0 and set the switches accordingly with the same error result (being "16K Critical Memory Region" error).

2. The diagnostics require 640K of RAM. Even if you adjust the 5160's SW1 switches to enable only some of the banks, the diagnostics will still test 640K. Do you have all banks populated, and the SW1 switches set to enable all four banks ?
Yes, I am. Also refer my previous comment. When I only populated bank 0 and set the switches accordingly, the System Memory test would obviously only test to address 40000 and, if I populate both bank 0 & bank 1 to 80000 and so on. However, I currently have all the banks populated.


Being only an address, the best it can do is point to a bank of RAM.
05080 hex is 20.125K, which on a 256-640K motherboard, resides in bank 0.

The screen also shows the bit/s in error, and from that, the chip/s in the bank can be identified.

And being 20.125K, the reported failure at that address cannot be associated with the 16K CRITICAL MEMORY REGION test, unless there is a bug in the diagnostics.?
I agree, which also does not make any sense to me. However, doesn't this test actually test the first 64K and not the first 16K or, am I'm confusing this with what the 1986 ROM BIOS is testing?
What is even more confusing is that I even swopped out all the memory in bank 1 with that in bank 0 and I'm still receiving the same error at the same address (on one occasion the address error shifted to 05040 but, for the most part, I'm getting the error at address 05080).
I'm confident that there is nothing wrong with the memory itself - for my own sanity, I even took this a step further:
I took the DRAM chips, that were originally on my IBM motherboard (only the ones populated in bank 0 and bank 1), and swopped them out with another XT clone PC (a DTK 10 MHz AMD CPU), I then swopped out the BIOS chip on the DTK motherboard and replaced it with the SuperSoft/LandMark Diagnostics ROM chip. I ran the Diagnostics on the DTK XT Clone PC and it passed all the tests (with multiple passes). So, it's definitely not the memory.


Are you sure about that? I pulled out my 256-640K motherboard, removed a chip from bank 0, then ran the diagnostics. As I expected, the 16K CRITICAL MEMORY REGION test failed, however, the diagnostics then skipped a bunch of tests, and proceeded to check the remainder of 640K.
Apologies, I didn't explain properly - I meant it skipped all the other tests but still proceeded to check the remainder of the 640K System Memory (which all passed without any errors, on multiple passes). The Slow Refresh failed all over.

For the time being, I'm keeping the DTK XT Clone PC's memory on my 256-640K motherboard, since I know that memory isn't faulty.
Considering that I'm still receiving a 16K Critical Memory Region error, and I know that my memory isn't faulty, I would have to assume that other circuitry on the motherboard is "interpreting" the data incorrectly, resulting in that error?

Unfortunately, I'm not an expert in this field but, fortunately I have someone that I can take this motherboard to who can debug it for me - I'm just trying to narrow this down so that he doesn't have to waste hours investigating certain paths that I've already explored and confirmed isn't the cause of the error.

Based on the above, would the logical conclusion be that something is wrong with the 8253 Timer channel one or the 8237 DMA controller channel 0?
 
@jesolo. Re PM's. You have, "exceeded their stored private messages quota and cannot accept further messages until they clear some space"
 
I did some experimentation. With only bank 0 populated, both the 16K CRITICAL MEMORY REGION test and the MEMORY REFRESH test pass, confirming that the MEMORY REFRESH test uses only the first bank. (As expected, the lack of 640K of RAM results in the SYSTEM MEMORY TO A0000 test failing.)
 
Yes, I am. Also refer my previous comment. When I only populated bank 0 and set the switches accordingly, the System Memory test would obviously only test to address 40000 and, if I populate both bank 0 & bank 1 to 80000 and so on. However, I currently have all the banks populated.
No matter what I set the RAM bank count switches in SW1 to, I see the SYSTEM MEMORY test going all the way to 640 KB. As I figure it, the diagnostics are not reading those switches to determine RAM size. That makes sense to me, because for all the diagnostic knows, it could be fitted to a 64KB-256KB motherboard, or a clone with yet another different RAM bank configuration. I think the diagnostic authors are just playing safe and testing to 640 KB.

I agree, which also does not make any sense to me. However, doesn't this test actually test the first 64K and not the first 16K or, am I'm confusing this with what the 1986 ROM BIOS is testing?
Yes, you are thinking of the 1986 revisions of IBM BIOS.

The 16K CRITICAL MEMORY REGION test has "16K" in it, and I guess we just have to trust Supersoft that the diagnostics are indeed only testing 16K for that test.

Considering that I'm still receiving a 16K Critical Memory Region error, and I know that my memory isn't faulty, I would have to assume that other circuitry on the motherboard is "interpreting" the data incorrectly, resulting in that error?
Well, something in the RAM subsystem. And there are many possibilities.

... and I'm still receiving the same error at the same address (on one occasion the address error shifted to 05040 but, for the most part, I'm getting the error at address 05080).
I do not know what the significance of address 05080 is. Certainly, no "Well, that points to ..."

Based on the above, would the logical conclusion be that something is wrong with the 8253 Timer channel one or the 8237 DMA controller channel 0?
* In the RAM subsystem, the 8253 and 8237 are used in support of refresh.
* I do not believe that the 16K CRITICAL MEMORY REGION test depends on operational refreshing.
* I believe that the MEMORY REFRESH test relies on the passing of the 16K CRITICAL MEMORY REGION test.

As I see it, I think the source of the 16K CRITICAL MEMORY REGION test needs to be rectified. And once rectified, the MEMORY REFRESH test may then pass. And if 640 KB is fitted (and SW1 set accordingly), the SLOW REFRESH TO A000 and SYSTEM MEMORY TO A000 tests may also pass.

But there could be multiple causes. Even if there are multiple causes, I see the 16K CRITICAL MEMORY REGION test as the one to target. If it gets fixed, and the MEMORY REFRESH test still fails, then target that, and so on.

That is just the way that I would handle the situation.
 
Yes, I agree that I need to find the root cause of the "16K Critical Memory Region" test failure.
I could try to reflow the solder on the bank 0 sockets - otherwise, I can take it to someone that has the correct test equipment (scope, etc.) and is also a bit more knowledgeable than I am to determine the root cause of the problem.

I will report back my findings once I've taken a trip to my friend.

PS: I happen to have another XT PC (a Sperry HT/Leading Edge Model M) that is also refusing to boot (that I found at an e-waste facility).
At first I discovered that the modem was causing the PSU to "kick out" (the fan would spin momentarily and then stop).
After I unplugged the modem from the motherboard, the PSU would come on but, the PC wouldn't POST.
I then also plugged in the SuperSoft Diagnostic ROM and it also indicated a "16K Critical Memory Region" test failure and, strangely enough, a RAM failure at address 05040 (which is again out of the 16K range).
In this case, the DRAM chips are soldered to the motherboard - so, I will have to de-solder them first and, while at it, solder sockets on board. I can then see if, in this case, it is one of the RAM chips that are faulty.
 
Last edited:
So two motherboards are showing the same failure? Maybe the SuperSoft chip you are using is bad?
It's possible but, I don't think so, since I also tested the ROM chip in a working XT PC and it passed all the tests.
Since neither of the two PC's wouldn't POST (with no beeps), I would expect to see that failure. What is curious is the failure at address 05040h or 05080h.
 
Just an update to my post.
I left the motherboard at a friend for a couple of weeks and returned today to replace the 74S280N parity chip.
To my surprise, when I demonstrated to him the errors that the Supersoft Landmark Diagnostic ROM displays, it passed the "16K Critical Memory Region" and the "Memory Refresh" test but, when it go to the MDA test, it just completely froze up (it just halts).
I then plugged in a CGA graphics card and it "skips" the MDA test but, then also halts (freezes up) at the CGA memory test.

Since I'm sure that the graphics cards are not faulty, what component on the motherboard could be the likely culprit that would case the graphics card memory test to completely halt the entire Diagnostics test?

I'm still random getting a "16K Critical Memory Region" error but, when I press down on the 74S280N chip, then it appears to pass that test. So, I'm still thinking that something isn't right with that 74S280N chip.
Does this chip also have anything to do with the graphics card memory?
 
It shouldn't. If memory (sic) serves, the 280 only applies to the memory on the planar. Other cards must do their own memory parity check.

I'm assuming that you've set the configuration switches correctly for the display adapter you're using.
 
Back
Top