Jump to content

IBM PC (5150) Troubleshooting Guide

From RetroTechCollection
IBM PC (5150) (photo)
IBM PC (5150)

Fault finding on the IBM PC (5150) starts from what the machine does at power-on: the beeps, the number on the screen, or nothing at all. IBM's service manual works from those indications to a replaceable unit; minuszerodegrees.net documents the component-level causes behind them. For supply voltages, IBM's service limits and the system board resistance check, see IBM PC (5150) Maintenance Guide#Power supply checks.

Before you start

[edit | edit source]
  • The 5150 has no CMOS setup. Memory size, drives, coprocessor and display type are set on the SW1 and SW2 switch blocks, so check them against the fitted hardware first.[1] IBM's charts for both system boards are in the Guide to Operations.[2] IBM's own service procedure also starts by checking that the switches match the configuration.[3]
  • The power-on self test (POST) is a confidence test only. The absence of a 201 error does not prove the RAM good, and the absence of a 301 does not prove the keyboard good.[4]
  • The 5150 POST does not output POST codes. Numbers shown by a POST card are not POST codes.[1]
  • The 5150 is slow. Some hard disk controllers wait two minutes before showing an error.[1]
  • After switching off, wait at least five seconds before switching on again, or the supply may not generate Power Good.[5]

Normal power-on behaviour

[edit | edit source]

IBM lists the normal responses as a cursor on the display after about four seconds, one short beep at the end of the POST, and then the "IBM Personal Computer BASIC" copyright screen, or the diagnostics menu if the Advanced Diagnostics diskette is in drive A.[3] The beep comes after the memory test, between 13 and 90 seconds after power-on depending on how much memory is fitted.[2] The 5150 does not display a memory count. The cursor is a small flashing one in the top-left corner, and a click from the speaker at power-on is normal.[1]

Beeps and error indications

[edit | edit source]

IBM's service manual sends each indication to a problem isolation chart (PIC). Minuszerodegrees lists the causes it has found for each.

IBM 5150 power-on indications
Indication IBM chart (HMS p. 010-6) Known causes (minuszerodegrees)
No beep Power (020) See below.
Continuous beep Power (020) Not generated by the POST at all. A faulty system board, a faulty card interfering with the system board, or a faulty supply. A supply that produces Power Good can still be faulty.
Repeating short beep Power (020)
Repeating long beeps, starting about 15 s (64 KB) to 20 s (256 KB) after power-on Keyboard clock line held low: a faulty keyboard or faulty keyboard interface on the system board.
1 long, 1 short System board (100) The POST's test of the 8259 interrupt controller or the 8253 timer, including their supporting chips, failed. On the 04/24/81 BIOS only, a further short beep about 15 s later means a failed Cassette BASIC ROM (U29 to U32).
1 long, 2 short Display (400) SW1 set for a display adapter the POST cannot find, or the adapter is faulty; SW1 set for EGA/VGA on a BIOS older than 10/27/82; a video card's own ROM reporting a fault; or the "C800 ROM" bug (see #Known problems).
1 long, 3 short Generated by the ROM on an IBM EGA card when it finds a fault with itself.
1 short, blank or incorrect display Display (400)
1 short, then Cassette BASIC instead of booting Diskette (600) SW1 switch 1 on makes the POST skip drive A.
101 System board (100)
131 System board (100) Cassette port wrap test failed. On a 64KB-256KB board, usually no −5 V reaching U1: reseat P9, or the supply or adapter has no −5 V output.
201, or xxxx 201 with PARITY CHECK x Memory (200) See #201 memory errors.
PARITY CHECK x with no number Power (020)
301 or xx 301 Keyboard (300) See #Keyboard.
601 Diskette (600) See #Floppy drive faults.

Sources: IBM's column from the service manual;[3] the causes from minuszerodegrees' POST errors page.[4]

Device numbers

[edit | edit source]

IBM's service charts and the Advanced Diagnostics number errors by device, and the chart numbers follow the same scheme: 1xx system board, 2xx memory, 3xx keyboard, 4xx monochrome display, 5xx colour/graphics display, 6xx diskette drives and adapter, 9xx parallel printer adapter, 11xx asynchronous communications adapter, 13xx game control adapter and 14xx printer.[3][6] IBM's 1986 service manual adds 7xx math coprocessor, 17xx fixed disk, 18xx expansion unit and 24xx Enhanced Graphics Adapter, among others.[7]

201 memory errors

[edit | edit source]

A 5150 reports a RAM fault found after the first 16 KB as "aabb 201", for example "0510 201". aa is the 4 KB address block that contains the fault and bb is the failing bit. After a 201 it is normal for the screen to clear and show PARITY CHECK 1 or PARITY CHECK 2.[4][8]

Which bank aa points to
Bank 16KB-64KB board 64KB-256KB board
Bank 0 00 to 03 00 to 0F
Bank 1 04 to 07 10 to 1F
Bank 2 08 to 0B 20 to 2F
Bank 3 0C to 0F 30 to 3F
Expansion card RAM 10 to 9F 40 to 9F

bb is 00 for the parity bit, and 01, 02, 04, 08, 10, 20, 40 or 80 for data bits 0 to 7. Any other value means several bits. That often means the POST is testing RAM that is not there: SW1 and SW2 set for more memory than is fitted, or a faulty or misconfigured memory card.[8] Other causes of a 201 are a failed chip, a chip with a poor socket contact, the wrong type of chip, a fault in the supporting circuitry, a board fault such as a damaged trace or socket, and the 10/27/82 BIOS with fewer than four banks fitted.[4]

A fault in the first 16 KB is never reported as a 201. The POST halts with no beep and no picture; see below.[8]

Parity check messages

[edit | edit source]

The BIOS non-maskable interrupt handler prints PARITY CHECK 1 for a parity error in system board memory and PARITY CHECK 2 for an I/O channel check raised by an expansion card.[9]

No beep and no picture

[edit | edit source]

A machine that shows nothing has many possible causes. Work through them in this order.

  1. On a 16KB-64KB board, confirm that the supply provides −5 V. That board's 4116 RAM needs −5 V and +12 V, and without −5 V the POST fails the first 16 KB of RAM and halts silently. ATX supplies with a P8/P9 adapter often lack −5 V.[10]
  2. Check Power Good between pins 1 and 5 of the system board connector: IBM's limit is 2.4 to 5.25 V. If it is missing, disconnect the supply and check the system board resistances. A reading below IBM's minimum is a system board short, usually a tantalum capacitor.[11][1] The limits are tabulated in the maintenance guide, and the search for the capacitor is in the capacitor guide.
  3. Try the minimum diagnostic configuration: system board, supply and speaker only, no cards and no keyboard, with SW1 switches 5 and 6 both off. About five seconds after power-on it should give one long and two short beeps.[12]
  4. Check the speaker for continuity with the connector off the board. IBM's chart replaces the speaker before the system board when the voltages are right and there is no beep.[11]
  5. Suspect the bank 0 RAM. The POST tests the first 16 KB and halts silently if it finds a fault there. The bank 0 chips are soldered in, which makes this harder to diagnose. Minuszerodegrees' procedure is: on a 16KB-64KB board confirm −5 V and +12 V at a RAM chip; inspect bank 0 for wrongly oriented or unsuitable chips and bad soldering; remove the RAM from banks 1 to 3; try piggybacking, which is hit and miss; then fit a diagnostic ROM in U33.[13]
  6. Fit a diagnostic ROM in socket U33 in place of the IBM BIOS. For bank 0 faults on the 16KB-64KB board, minuszerodegrees recommends Ruud's diagnostic ROM over the Supersoft/Landmark ROM, which does not detect addressing faults and gives misleading RAM results on that board.[13][4]

A flashing cursor and nothing else, even after two minutes, has been caused by faulty RAM refresh circuitry, and by a 5161 expansion unit containing an IBM Fixed Disk Adapter with the extender card switches in the 5150 set to 0011 (setting them to 0100 works around it).[4]

Clock and reset at the expansion slots

[edit | edit source]

The expansion slot pins give access to the main clocks and the reset line without probing chips. Measure on the B (solder) side of an empty slot, counting from the rear panel.[14]

IBM 5150 I/O channel test points (Technical Reference pp. 1-19 to 1-23)
Pin Signal Expected
B1, B10, B31 Ground 0 V
B3, B29 +5 V +5 V
B5 −5 V −5 V
B7 −12 V −12 V
B9 +12 V +12 V
B20 CLK 4.77 MHz, 210 ns period, 33 % duty cycle
B30 OSC 14.31818 MHz, 70 ns period, 50 % duty cycle
B2 RESET DRV Active high: high while the system is reset at power-up, low when running

The 4.77 MHz processor clock is the 14.31818 MHz crystal frequency divided by three.[14] CLK is derived from OSC, and RESET DRV is asserted at power-up and during a low line voltage.[14] A missing CLK with OSC present, or RESET DRV stuck high, therefore points at the clock and reset circuit or at Power Good.

Display

[edit | edit source]
  • No picture but a normal single beep: check that the adapter is seated, the monitor cable and the monitor, and that SW1 switches 5 and 6 match the adapter.[2] IBM's start procedure turns the contrast and brightness controls fully clockwise before anything else.[3]
  • One long and two short beeps with a working adapter: see the table above. The "C800 ROM" bug makes a corrupt hard disk controller ROM look like a video fault.[10]

Keyboard

[edit | edit source]
  • xx 301: the keyboard's self test found a stuck key, and xx identifies it.[4]
  • 301 alone: no keyboard, the keyboard plugged into the cassette socket, an AT keyboard, a broken wire in the cable or a loose wire in its connector, a failed keyboard chip, a bad solder joint on the system board DIN socket, or faulty keyboard circuitry on the system board.[4] Minuszerodegrees publishes a diagram for metering out the cable.[15]
  • The 5170's 84-key keyboard uses the AT protocol and does not work on a 5150. Some auto-switching IBM 101-key keyboards work on a 5160 but not on a 5150; minuszerodegrees' own 52G9658 did not. Third-party keyboards with an XT mode, or AT, PS/2 or USB keyboards with a converter, are the alternatives.[15] See also IBM Model F (83-key).

Floppy drive faults

[edit | edit source]

The drive in later 5150s is typically a Tandon TM100-2 or TM100-2A double-sided drive, or a Micropolis equivalent. Very early machines had a single-sided drive.[10]

  • Drive LED and spindle motor come on at power-on and never go off: with the 10/19/81 BIOS, a failed Cassette BASIC ROM (U29 to U32); otherwise a DOS start-up problem.[4]
  • Read failures on every disk: the TM100-2 needs double-sided, double-density, soft-sectored disks. Disks formatted or written in a high-density drive may not read in it.[16]
  • Head carriage that does not move freely by hand: deteriorated rail lubricant. See IBM PC (5150) Maintenance Guide#Floppy drives.[16]
  • Occasional read errors on good disks: oxide built up on the heads. Tandon's manual forbids cleaning the heads by hand and allows a cleaning diskette when contamination is severe.[17] Minuszerodegrees notes that a badly shedding disk can lay down more oxide than a cleaning disk removes in one pass, and that putting the same disk back in re-fouls the heads.[16]
  • Reads its own disks but not disks from other drives: radial head alignment. Minuszerodegrees advises against attempting alignment unless you know the drive has an alignment problem; the manufacturer's procedure needs an oscilloscope and a special alignment disk. It also quotes Chuck(G) that many apparent alignment faults on Tandon drives are a dirty track 0 sensor.[16]
  • Wrong spindle speed: the specification is 300 RPM ± 1.5 %, 295.5 to 304.5 RPM, adjusted with R4 on the servo board.[17][16]
  • A TM100-2A that overloads the supply: minuszerodegrees' first suspects are the tantalum capacitors C36 and C43, 4.7 µF 16 V.[16]
  • Erratic operation: check the terminator on the TM100-2, which must be fitted or removed to suit the configuration; some wrong combinations cause improper operation.[16]
  • Drive belt off its pulleys or damaged, or a spindle that does not turn freely with the belt removed: IBM's chart replaces the belt, then the spindle assembly, then the drive motor.[18]
IBM 5150 diskette error codes (HMS pp. 600-27, 600-28)
Code IBM's diagnosis IBM's action
606 Diskette drive or diskette adapter failed Replace the drive, then the adapter
607 Write-protected or wrongly inserted diskette, or a faulty write-protect switch Use an unprotected diskette; check 0 V between TP9 and TP10; replace the switch or the logic board
608 Fault on the Advanced Diagnostics diskette Use the backup diagnostics diskette
611, 612, 613 Signal cable or diskette adapter failed Check the signal cable, replace the adapter
621 to 626 Diskette drive failed Replace the drive

IBM's chart first repeats the test with another formatted diskette, and uses the fourth character of the second message line to identify the drive: 0 for drive A, 1 for drive B.[6]

Known problems

[edit | edit source]
  • The 04/24/81 (5700051) and 10/19/81 (5700671) BIOS revisions recognise only 544 KB of RAM and ignore the ROM on expansion cards, so EGA and VGA cards and hard disk controllers do not work with them. The 10/27/82 revision (1501476) removes both limits.[19]
  • With the 10/27/82 BIOS, the POST miscalculates the memory unless all four system board banks are filled and SW1 and SW2 are set to match.[10]
  • If a hard disk controller's ROM at C8000 is corrupted (apart from its first two bytes), the POST should show "C800 ROM" but instead gives one long and two short beeps, the video fault pattern.[10]
  • DOS does not always say so when there is not enough conventional memory for that version.[10]
  • Some 16-bit cards sold as 8-bit compatible mean an 8-bit slot in an AT, or need switches, jumpers or software set for 8-bit operation.[10]
  • A V20 processor in place of the 8088 runs the BIOS slightly faster than it was written for, which causes timing problems on some machines. Minuszerodegrees' example is a 5160 with the first BIOS and an AST SixPakPlus card, which would not start with a V20 until the card was removed or the BIOS upgraded.[20]
  • The system board decodes the address range F0000 to F3FFF for reads although nothing is there, so a card ROM mapped into it causes bus contention.[10]
  • Minuszerodegrees relays a report, which it had not tested, that Microsoft's MS-DOS 3.20 (not IBM PC DOS) does not work with the two 1981 BIOS revisions and that MS-DOS 3.21 fixes it.[10]

Power supply

[edit | edit source]
  • A shorted tantalum capacitor on the system board, a card or a drive stops the supply, although its fan may still turn. The machine looks dead.[10]
  • Aged mains suppression capacitors in the supply tend to rupture. The old RIFA parts do so with smoke and a strong smell that lasts until the capacitor is removed, and may leak a fluid that should not be touched. A replacement must match the capacitance and class (X2 for X2, Y2 for Y2), with an AC voltage rating at least as high.[21]
  • The supply needs a load to start. A working system board alone is normally enough, but not always, and a supply that stops after a second can be either underloaded or overloaded.[22]

References

[edit | edit source]
  1. ↑ 1.0 1.1 1.2 1.3 1.4 IBM 5150 – Basics, for 5150 beginners, minuszerodegrees.net.
  2. ↑ 2.0 2.1 2.2 IBM, Guide to Operations, Revised Edition (April 1984): Mini Power-On Self Test p. 2-7; switch setting charts pp. 5-7 to 5-50. Hosted as File:IBM PC 5150 Guide to Operations (April 1984).pdf, described at IBM PC 5150 Guide to Operations (April 1984).
  3. ↑ 3.0 3.1 3.2 3.3 3.4 IBM, Hardware Maintenance and Service, First Edition (August 1981), PIC 010 "Start", pp. 010-2 to 010-6. Hosted as File:IBM PC 5150 Hardware Maintenance and Service (August 1981).pdf, described at IBM PC 5150 Hardware Maintenance and Service (August 1981).
  4. ↑ 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 IBM 5150 – POST – Some errors (on-screen, or otherwise), minuszerodegrees.net.
  5. ↑ IBM, Technical Reference, Revised Edition (April 1984), Section 3 "Power Supply", pp. 3-3 to 3-7. Hosted as File:IBM PC 5150 Technical Reference.pdf, described at IBM PC 5150 Technical Reference.
  6. ↑ 6.0 6.1 IBM, Hardware Maintenance and Service (August 1981), Section 2 "Problem Isolation", chart index p. 2-1; diskette drive test pp. 600-7 and 600-8; diskette drive error table pp. 600-27 and 600-28.
  7. ↑ IBM Hardware Maintenance Service, manual part number 6280087, minuszerodegrees.net, list of diagnostic MAPs. Described at IBM Hardware Maintenance Service (March 1986).
  8. ↑ 8.0 8.1 8.2 Minuszerodegrees.net, IBM 5150: RAM on a 64KB-256KB motherboard and RAM on a 16KB-64KB motherboard, sections "POST test of conventional memory", "Address Block Indicator" and "Bit Indicator".
  9. ↑ IBM, Technical Reference (April 1984), Section 5 "System BIOS" listing: NMI interrupt routine p. 5-40; message strings pp. 5-112 and 5-114.
  10. ↑ 10.00 10.01 10.02 10.03 10.04 10.05 10.06 10.07 10.08 10.09 IBM 5150 – Known Problems/Issues, minuszerodegrees.net.
  11. ↑ 11.0 11.1 IBM, Hardware Maintenance and Service (August 1981), PIC 020 "Power", pp. 020-1 to 020-9.
  12. ↑ IBM 5150/5155/5160 – Minimum Diagnostic Configuration, minuszerodegrees.net.
  13. ↑ 13.0 13.1 IBM 5150 – Faulty RAM in bank 0, minuszerodegrees.net.
  14. ↑ 14.0 14.1 14.2 IBM, Technical Reference (April 1984), Section 1 "System Board": microprocessor clock p. 1-3; I/O channel diagram p. 1-19; signal descriptions pp. 1-20 to 1-23.
  15. ↑ 15.0 15.1 IBM 5150 – Keyboards, minuszerodegrees.net.
  16. ↑ 16.0 16.1 16.2 16.3 16.4 16.5 16.6 Tandon TM100-2 in IBM 5150/5155/5160 – Known Problems/Issues, minuszerodegrees.net.
  17. ↑ 17.0 17.1 Tandon, TM100-1/TM100-2 48 TPI Operating and Service Manuals (1983): head cleaning caution, p. 6-1; specifications, p. 2-3. Hosted as File:Tandon TM100-1 TM100-2 48TPI Operating and Service Manuals 1983.pdf.
  18. ↑ IBM, Hardware Maintenance and Service (August 1981), PIC 600 "Diskette Drive", pp. 600-25 and 600-26.
  19. ↑ IBM 5150 – BIOS Revisions, minuszerodegrees.net.
  20. ↑ Problems Resulting From Upgrading an 8088 CPU to a V20 CPU, minuszerodegrees.net.
  21. ↑ Commonly Failing Electronic Components (in vintage computers), minuszerodegrees.net, section "Line Suppression Capacitor".
  22. ↑ IBM 5150 – Power Supply Unit (PSU), minuszerodegrees.net.
[edit | edit source]