Home 

IBM 5150  -  Cassette BASIC


This is the BASIC that is built into the IBM 5150 motherboard.

The 5150 motherboard will boot to cassette BASIC if it cannot find a disk that it can boot from.

Cassette BASIC resides in motherboard ROM chips U29, U30, U31 and U32.  Those four chips contain the BASIC and nothing else.

IBM possibly named it 'cassette BASIC' because it supports the cassette port only, e.g. you cannot write/read BASIC files to/from floppy disks (or hard disk drives).
If you require disk support, then use the BASIC or BASICA included in IBM PC DOS (or the BASIC in MS-DOS).


Version

When cassette BASIC starts, one of the things displayed is the version number.
In a 5150, it will be either version C1.00 or the later C1.10
The 'C' portion is an indicator that the BASIC is the 'cassette' version.


RAM usage

Although cassette BASIC runs from ROM, it uses RAM (for itself, to hold your program, for variables, etc.)

When cassette BASIC starts:
• it uses a certain amount of motherboard RAM, per the following:
16KB-64KB motherboard  ---> Whatever RAM is fitted on the motherboard (either 16KB, 32KB, 48KB, or 64KB)
64KB-256KB motherboard  ---> 64 KB
• reserves some of that amount for itself; then
• displays the free amount, e.g. "61404 Bytes free", e.g. "62940 Bytes free".


Alias

In regard to this built-in BASIC, 'cassette BASIC' is the term used in the Guide to Operations manuals for the 5150.
In the Technical Reference manuals, 'cassette BASIC' is also used, but 'resident BASIC' has been used in some places instead.

5150_resident_basic.jpg


Part numbers

The IBM part number is seven digits long, and printed on top of each BASIC ROM chip.
Following are some sets that I have seen.

  Example #1 Example #2 Example #3 Example #4
U32 5700043 5700043 6359113 5000023
U31 5700035 5700035 6359112 5000022
U30 5700027 5000020 6359111 5000021
U29 5700019 5700019 6359109 5000019
  C1.00 C1.00   C1.10

A photo which includes example #4 is at here.



Replacing faulty BASIC ROM chips

Content images of the BASIC ROM chips are at here.

Note that the BASIC ROM chips have the same special pinout as used by the BIOS ROM, chip U33.
• A 2732 type EPROM is not suitable.  It has a different pinout, and its capacity (4 KB) is half of what is required.
• If a suitable adapter is used, then 2764, 27128, 27256 and 27512 EPROM's can be used.
• There are EPROM equivalents (i.e. no adapter required).

Click here for more replacement information.  That page is about the U33 chip, but the same information applies to the BASIC ROM chips.



Cable

It is the same as the one used by the Radio Shack (Tandy) TRS-80.



Failure

If one or more of the BASIC ROM chips fail, the resulting symptom varies according to the revision of BIOS (BIOS resides in chip U33) that is fitted.

      Symptoms
04/24/81
BIOS
At power on, you see the flashing cursor as expected.
A few seconds later, one long beep followed by one short beep.  About 15 seconds later, a single short beep.
No further progress.
Even after a few minutes, a flashing cursor is still on screen.
10/19/81
BIOS
No indication that points to the BASIC chips.
At power on, you see the flashing cursor as expected.
Then, the floppy drive's LED and spindle motor turn on, but never turn off.  No futher progress.
Then, inserting a boot floppy does nothing (no boot attempt made).
10/27/82
BIOS
U29 failure: "F600 ROM" displayed
U30 failure: "F800 ROM" displayed
U31 failure: "FA00 ROM" displayed
U32 failure: "FC00 ROM" displayed



5150ROMS  tool

Be aware of the 5150ROMS tool, available at here.

If you can boot to DOS, the tool can verify the integrity of the four Cassette BASIC ROM's.
It will detect things such as somebody accidentally putting one (or more) of the four Cassette BASIC ROM's into the wrong socket.