Parent


Ruud's diagnostic ROM
fitted to the 16KB-64KB version of IBM 5150 motherboard



Ruud's diagnostic ROM is based on the Supersoft/Landmark diagnostic ROM, but unlike that ROM, Ruud's diagnostic ROM will stop RAM testing at the first RAM error.

Note that for an IBM 5150 motherboard, Ruud's diagnostic ROM does not require that motherboard's RAM related switches on SW1 and SW2 be set correctly.


Video card requirements

Ruud's diagnostic ROM requires an MDA or CGA video card.  An EGA card or VGA card will not work.

If you do not have a suitable video card, the best you can do is monitor the checkpoint codes that the diagnostic ROM outputs - see the following 'Checkpoint codes' section.


Where does it fit ?

Remove the IBM BIOS ROM in socket U33, then fit the Ruud's diagnostic ROM in its place.  Depending on the EPROM type you use (see below), you may or may not require a suitable adapter to go between the EPROM and socket U33.


Checkpoint codes

At various stages of execution, Ruud's diagnostic ROM sends 'checkpoint' codes (bytes) to I/O ports 80h, 378h, and 278h.  The codes are listed in the source code of the diagnostic, but early codes are shown at here.

I/O ports 378h and 278h are parallel (printer) ports.  If you have a parallel (printer) port at either of those ports, then the device shown at here can be used to view bytes sent to the port.

WARNING:  Note that the parallel (printer) port on an MDA (monochrome) card is typically at 3BCh, and is therefore, unusable.

On an IBM 5150 or 5160, rarely does a POST card work to monitor bytes sent to I/O port 80h.  Do not expect it to work.


Speaker

Early in the execution of Ruud's diagnostic ROM, the diagnostic beeps the speaker.  That is seen at step 25 at here.


Faulty RAM bank 0 ?

If RAM bank 0 is faulty, and the IBM BIOS ROM is fitted, you will appear to have an 'appears dead' motherboard.  Although, that symptom has many possible causes.

Use of Ruud's diagnostic ROM will reveal a faulty RAM chip in bank 0.  See the yellow highlighted line below.

Note that Ruud's diagnostic ROM does not test RAM refresh.  If faulty RAM refresh circuitry is the only problem, the POST in the IBM BIOS ROM will start and display something on-screen.  More information about that is at here.


Observed RAM test behaviour on my 16KB-64KB motherboard

The following table applies to version  2019-07-23  of the diagnostic.

Condition      Observed behaviour      Comment
All 4 banks are good See the partial screen shot at here.  4 banks of 16 KB = 64 KB
Only bank 0 is populated, and all chips in it are good See the partial screen shot at here.  1 bank of 16 KB = 16 KB
A single chip has failed, in bank 0 See the partial screen shot at here.  Complete failure of chip (i.e. affecting all addresses in chip).  See note 1 below.
A single chip has failed, in bank 1 Either "Bad memory 163 KB" is displayed, or only 16 KB of RAM is found ("Found RAM: 16 KB").  163 KB ???
A single chip has failed, in bank 2 Either "Bad memory 163 KB" is displayed, or only 32 KB of RAM is found ("Found RAM: 32 KB").  163 KB ???
A single chip has failed, in bank 3 The diagnostic will only find 48 KB of RAM.  ("Found RAM: 48 KB")  
RAM refreshed disabled 1. "Found RAM: 64 KB" is displayed.
2. "Bad memory 163 KB" is displayed.
3. The bit error pattern shows the parity bit in error.
 163 KB ???



Images (content) to be programmed into EPROM

To create a Ruud's Diagnostic ROM, you program/write ('burn') an image into a suitable EPROM.  An EPROM programmer is required to do that.  That EPROM replaces the BIOS ROM in IC socket U33.

As shown in the table below, there are various EPROM options for IC socket U33.  In some cases, an adapter is required between the EPROM and the IC socket.

There are some people/companies shown at here who can supply EPROM's, programmed/written ('burned') to your requirement.


Type of EPROM for IBM 5150 Size Image download Photo Comment
MCM68766 EPROM 8 KB  Download    
2564 EPROM 8 KB  Download  Photo  2564, not 2764
With adapter, 2764/27C64 EPROM 8 KB  Download    Click here for adapter.
With adapter, 27128/27C128 EPROM 16 KB  Download    Click here for adapter.   See note 1 below.
With adapter, 27256/27C256 EPROM 32 KB  Download  Photo  Click here for adapter.   See note 1 below.
With adapter, W27E257 EEPROM 32 KB  Download    Click here for adapter.   See notes 1 and 2 below.





Note 1 Ruud's Diagnostic ROM for the PC and XT is actually only 8 KB in size.
To create a 16 KB sized image, the 8 KB image was simply doubled.
To create a 32 KB sized image, the 8 KB image was simply quadrupled.
   
Note 2 Regarding the programming/writing of an image into the W27E257:
Even though the W27E257 is an EEPROM, rather than a 'traditional' EPROM, you will still need an EPROM programmer (or other) to program/write to the W27E257.
That is because the IBM 5150 motherboard does not support programming/writing to EEPROM's in its sockets.