• Please review our updated Terms and Rules here

5150MB with bad memory in Bank 0, worth repairing?

the xt guy

Experienced Member
Joined
Jan 19, 2004
Messages
112
Location
Colorado
I've got this 5150 motherboard that when booted up, gives me this POST error code:

1051 201

I know that 201 signifies a memory error. I pulled all the socketed RAM chips in memory banks 1, 2 and 3 and reset the switch blocks to tell the MB that there is only 64K of RAM onboard, in bank 0.

Unfortunately, I still get the same error code.

As you probably know, in the 5150 MB, the first bank of RAM (bank 0) is soldered directly to the MB, the other 3 banks (1, 2 and 3) are socketed.

I have also read that the first 4 numbers of the error code tell the bank number and also the location (in hex?) of the bad chip. Apparently, 0 is the bank number, 51 is a code for the location of the bad chip. A few months ago, I stumbled across a website that detailed some of this info. Of course, I did not bookmark it and now cannot find the webpage.

Even before attempting to unsolder the defective RAM chip, I would have to know which chip it was, as unsoldering the chip would not be easy and there is always the possibility of damaging something. I wouldn't want to unsolder the wrong chip and discover all my effort was for nothing.

If it were a 16-64kb model, it definitely would be worth attempting to save but it is the more common 64-256kb. model.

My 'Upgrading and Repairing PC's' book by Meuller says that IBM, back in the days when they repaired these systems, would recommend replacing the 5150 MB instead of repairing it.

On the other hand, I really do hate to toss out this MB because of one defective generic RAM chip.
 
I have the Technical Reference, but I don't know if the decoding of the error message is in there. If not, it will definitely be in the Hardware Service and Maintenance book.

IBM advised people to replace motherboards, but back then motherboards were in stock. If you can show me a new supply of motherboards, then feel free to replace it. :) Otherwise, I'd try to fix this one. Or at least shelve it until you can find somebody to do it for you, or you learn what you need to do it yourself successfully. Even the more common 64KB models are not that common ... Don't trash it, you will regret that later.

Replacing the defective chip means desoldering the existing chip, which requires a little skill to do without damaging the motherboard. Before replacing a chip, solder a socket in - that makes future repairs easier.
 
All I have is the 'Guide To Operations' manual for the 5150 and I know it's not in there. Perhaps somebody on this site has got one of the others and can look up the info.

I know that replacing the chip means soldering a socket in. I've been doing soldering for over 35 years, so hopefully I won't make any dumb blunders getting the old chip out.

I have 3 or 4 working 5150's with the 256k MB (and one with the 16-64k mb), so it would be nice to have a spare 5150MB in case one of the other MB's goes out. I really didn't want to be lazy and trash it...I guess that's why I came here with my question.
 
It's hard to imagine that IBM would go to all the trouble to include POST routines to output the nature of the error, as well as the exact location of the faulty chip, if they didn't intend at least some simple repairs to be made. If you can locate the bad chip, I'd say it was worth saving, at least as a spare.

--T
 
Luke,

Thanks for the link, it is interesting. The Advacnced Diagnostics disk must give a different error code than the POST error, because the information in the link you provided makes no sense with the error code I get.

It cannnot be Bank 1 error because there is no Bank 1 memory installed, the sockets are empty. I also have the DIP switches set on the MB for 'Bank 0 only'.

Also, I doubt if the Diagnostics Disk would work anyway, as the first 64k of RAM is corrupt. I am sure the diagnostics disk needs SOME kind of RAM to run.

If I let the computer boot into cassette basic, it just says 12904k memory free, which makes me think most of the RAM is corrupted.

Perhaps someone has a diskimage of the Advanced Diagnostics disk. I searched on google, but could not find one (plenty of PS/2 stuff, I even found disks for the 5170 AT and the IBM convertible PC of 1986 but nothing for the 5150 or 5160.)
 
A tip for removing defective chips, or for chips that you definitely have a replacement for.

Cut all the pins and remove the chip. Now you can pull each pin with a quick touch of the soldering iron. Much easier than trying to remove the chip intact and it greatly lessens the chance of lifting a trace on the board.

I usually remove the pins in an alternating pattern to prevent heat buildup on the board. For example, on a 16 pin chip, I'd remove pin 1, then pin 9, then pin 16, etc. That may be taking it too far, but I've always had good results.

If you already use this method, then disregard this post :)

Kent
 
Don't forget your trusty solder sucker too. When I first saw mine in the store, I thought it was like a hypodermic needle or something. Works great once you get the solder liquid. Cleans out the hole in the mb nice.
 
Yep, solder suckers are good. I have the spring-loaded type and the squeeze-bulb type. Desoldering braid has its uses, as well. Never had much luck with the squeeze-bulb desoldering iron, I'm betting that the higher priced desoldering irons with a vacuum source work better.

My employer was willing to buy a high-dollar soldering-desoldering station for surface mount devices but the components that we wanted to replace weren't available (output transistors on a variable frequency AC motor drive).

Kent
 
Information from 'Upgrading and Repairing PC's, first edition':

PC's give a 4 digit code.
The first two digits are the two most significant digits in the failing address, e.g. "10" means a failing address in the range 10000 to 10FFF (64K to 68K)
The next two digits indicate the failing bits, e.g. 51 (01010001) means that bits 6, 4 and 0 failed.


ADDRESS TO BANK MAPPING FOR 16/64K 5150 MOTHERBOARD

00xxx to 03xxx = Bank 0
04xxx to 07xxx = Bank 1
08xxx to 0Bxxx = Bank 2
0Cxxx to 0Fxxx = Bank 3


ADDRESS TO BANK MAPPING FOR 64/256K 5150 MOTHERBOARD

00xxx to 0Fxxx = Bank 0
10xxx to 1Fxxx = Bank 1
20xxx to 2Fxxx = Bank 2
30xxx to 3Fxxx = Bank 3
 
I did some experiments on my 5150 motherboard. It's a 64K/256K type fully populated with RAM (i.e. 256K).
Sorry for being a bit technical towards the end.

EXPERIMENT 1

I removed the bit 0 chip out of bank 1. As expected, on power-on I saw a 1001 error followed shortly after by a 'parity check' error.


EXPERIMENT 2

I then set SW1-3 and SW1-4 to both on (bank 0 only). On power-on I saw the same error. Surprising, because I like you expected the 5150 not to test past the 64K mark.
Just in case switch bank SW2 was involved, I set all of its switches to ON. Same result.
Out of curiosity, I'll go through my BIOS listing later to see what's happening, but for now we know that the 'testing past 64K' that you see is normal.

Chip restored.


EXPERIMENT 3

I added an expansion card to provide RAM between 256K and 640K. I set SW1-3, SW1-4 and SW2 appropriately. System booted without error and diags confirmed 640K RAM.
I removed the card (without changing any switches) then powered on the 5150. I saw a "4054 201" error not followed by a parity error.
The "40" bit (indicating failure just after 256K) was expected but not the "54" bit. Because the machine was addressing non-existent RAM, I expected the "54" (the error bit pattern) to have been either 00h (or FFh) that was XOR'ed with one of the test bytes. The BIOS listing I have (the 10/27/82 BIOS for the 64K/256K motherboard) shows test bytes of 55h, AAh and FFh.
Repeated reboots showed the same result. Examination of the schematic might reveal the reason, but for now the results of the experiment suggest that you can get unexpected results if the machine addresses non-existent RAM.


Putting all that together with your motherboards symptoms, I think your motherboard has a memory addressing problem. It's probably addressing bank 0 okay, but addresses to bank 1 are bad. Looking at the 5150 motherboard schematic:
1. I can't see how one bad RAM chip can cause a multi-bit failure.
2. It's possible that bank 1 is not being decoded at all (resulting in a non-driven data bus being read).
3. It's possible that some other chip/s are erroneously putting data on the data bus during bank 1 decodes.

I put equal probability on items 2 and 3. If item 2, chips U47, U65 and U49 are involved.

Another possibility. Bank 1 is the first bank in sockets. If you don't know the history of the motherboard, is it possible that the socketed RAM chips have been substituted with unsuitable chips?
 
Wow modem 7, thanks for all the extensive testing you did!

I have no chips in Banks 1, 2 or 3, they're empty. The only RAM I have on the board are the soldered-in chips of Bank 0.

So, having it give a numeral '1', indicating a problem in bank 1 of memory chips is confusing, since I have the DIP switches set to 'bank 0 only'.

Dimension Dude, thanks for the comments about removing the IC's. I've heard of that method before, but had forgotten about it.
 
the xt guy said:
I have no chips in Banks 1, 2 or 3, they're empty.
Good point. Yes, you did later remove the chips in banks 1/2/3. That discards my, "is it possible that the socketed RAM chips have been substituted with unsuitable chips?". I should have put more thought into that.

the xt guy said:
The only RAM I have on the board are the soldered-in chips of Bank 0.
So, having it give a numeral '1', indicating a problem in bank 1 of memory chips is confusing, since I have the DIP switches set to 'bank 0 only'.
First thing to note is the two switch blocks don't physically control anything. Their contents are simply read by the POST on power-up. The settings for the memory (SW1-3 and SW1-4 and SW2) are inspected, the amount of RAM calculated and stored in the BIOS data area.

With SW1-3 and SW1-4 both on (bank 0 only) and SW2 at the 'minimum' settings, I expected the POST (in a BIOS for the 64K/256K motherboard) to establish from the switches that the 5150 only had 64K of RAM, and therefore to only do it's memory test up to the 64K mark. Experiment 2' on my serviceable 5150 revealed that that's not the case. When I get the time, I'll examine the BIOS listing to work out why (for my own curiosity).

And so with you setting SW1-3 and SW1-4 both on (bank 0 only), we know now that once your 5150 has tested bank 0 (64K), it will go on to test bank 1. On your 5150, it appears that none of the chips in bank 1 are being found.
 
Back
Top