Home 

IBM 5150  -  Substituting the U33 BIOS ROM


The BIOS ROM on an IBM 5150 motherboard is located in socket U33.  The ROM is an 8 KB sized device, with a specific pinout.


Reasons for substitution

There are reasons why you may need to substitute it with something else:
* You need to swap it with something else in order to determine if the ROM is faulty;
* The ROM is faulty;
* You need to upgrade the ROM to a later version (e.g. the 10/27/82 version in order to support an EGA card);
* You want to run a diagnostic ROM (such as SuperSoft/Landmark).


ROM make/models used by IBM

In the supply lifetime of the IBM 5150, IBM used varying make/model of ROM for the BIOS ROM.  Some are shown at here.

    - AMD AM9264
    - AMI S688364
    - Mostek MK36000 series.  Mostek custom-programmed these for companies.  The numbers after the '36' indicate which code is in the ROM.

As shown in the AM9264 cross-reference at here, there were possibly other chips used as well.

Note that if you find these ROMs on eBay (and other), they most likely will contain something other than 5150 BIOS code.


Use of an EPROM

The Motorola MCM68766 is an EPROM equivalent, but note that if you acquire one, you then have the issue of locating equipment that can program it.

An option is to use a 27xxx series EPROM together with a suitable adapter.  27xxx series EPROMs are readily available and you can still purchase EPROM programmers on eBay (and elsewhere) that can program the 27xxx series EPROMs.

Below are a couple of adapter options.


>> OPTION 1 - ADAPTER PURCHASE

An adapter that will work with 2764, 27128, 27256 and 27512 EPROMs (or 27C64/27C128/27C256/27C512) is advertised at http://store.go4retro.com/2364-adapter/
That adapter is described as "2364 Adapter".  From a reading perspective, the 2364 ROM is pin compatible with the BIOS ROM used on the IBM 5150 motherboard.  I have one of these adapters, and it works.
Note that the seller offers either the PCB alone, or a complete unit.

This particular adapter ties pins 1, 26 and 27 of the 27xxx EPROM socket to Vcc (via a pull-up resistor).  Therefore, when this adapter (as supplied) is used on the IBM 5150 motherboard, the 5150 motherboard will only see/use the last 8 KB block within 27128/27256/27512 EPROMs.

Beware: Even though I am very careful, sometimes I will push this adapter into a socket, but the adapter does not work.  Sometimes, refitting the adapter results in it working, but sometimes two or three retries are required.  I also see this with the homemade adapter described below.


>> OPTION 2 - HOMEMADE ADAPTER

One of the adapters that I have constructed is pictured below.  Unlike the above adapter, it has pins 26 and 27 of the 27xxx EPROM socket tied to ground.  That results in three things:

1.  It is only suitable for 27256 and 27512 EPROMs (or 27C256/27C512).
2.  When this adapter is used on the IBM 5150 motherboard, the 5150 motherboard will only see/use the first 8 KB block within a 27256 EPROM.  [because A14=0, A13=0]
3.  When this adapter is used on the IBM 5150 motherboard, the 5150 motherboard will only see/use the fifth 8 KB block within a 27512 EPROM.  [because A15=1, A14=0, A13=0]

Of course, in making the adapter, you have the option of tying pins 26 and 27 of the 27xxx EPROM socket to Vcc.  That would turn it into the adapter described in Option 1.

Beware: Even though I am very careful, sometimes I will push this adapter into a socket, but the adapter does not work.  Sometimes, refitting the adapter results in it working, but sometimes two or three retries are required.  I also see this with the purchased adapter described in option 1.


27256_adapter_for_5150.jpg 


It is beyond the scope of this web page to describe how to construct the adapter.  Following is the schematic diagram.


    U33
   SOCKET                       27256
 +----------+                 +----------+
 |          |                 |          |
 |  1 (A7)  |---------------->|  3 (A7)  |
 |  2 (A6)  |---------------->|  4 (A6)  |
 |  3 (A5)  |---------------->|  5 (A5)  |
 |  4 (A4)  |---------------->|  6 (A4)  |
 |  5 (A3)  |---------------->|  7 (A3)  |
 |  6 (A2)  |---------------->|  8 (A2)  |
 |  7 (A1)  |---------------->|  9 (A1)  |
 |  8 (A0)  |---------------->| 10 (A0)  |
 |          |                 |          |
 |  9 (D0)  |<----------------| 11 (D0)  |
 | 10 (D1)  |<----------------| 12 (D1)  |
 | 11 (D2)  |<----------------| 13 (D2)  |
 |          |                 |          |
 | 12 (GND) |-----------+-----| 14 (GND) |
 |          |           +---->| 20 (/CE) |
 |          |           +---->| 26 (A13) |
 |          |           +---->| 27 (A14) |
 |          |                 |          |
 | 13 (D3)  |<----------------| 15 (D3)  |
 | 14 (D4)  |<----------------| 16 (D4)  |
 | 15 (D5)  |<----------------| 17 (D5)  |
 | 16 (D6)  |<----------------| 18 (D6)  |
 | 17 (D7)  |<----------------| 19 (D7)  |
 |          |                 |          |
 | 18 (A11) |---------------->| 23 (A11) |
 | 19 (A10) |---------------->| 21 (A10) |
 |          |                 |          |
 | 20 (/CE) |---------------->| 22 (/OE) |
 |          |                 |          |
 | 21 (A12) |---------------->|  2 (A12) |
 | 22 (A9)  |---------------->| 24 (A9)  |
 | 23 (A8)  |---------------->| 25 (A8)  |
 |          |                 |          |
 | 24 (VCC) |-----------+-----| 28 (VCC) |
 |          |           |     |          |
 |          |           +-----|  1 (VPP) |  [VPP on a 27256, A15 on a 27512]
 |          |                 |          |
 +----------+                 +----------+