IBM PC (5150) Troubleshooting Guide: Difference between revisions
Clean up red links: create supporting pages for relevant items, unlink tangential ones (IBM 5100, Datamaster, NEC V20, Soarer's Converter, DIP switch reference, Memtest86, Model F foam pad replacement) |
Add representative photo (Wikimedia Commons, attributed on file page) |
||
| (4 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
<templatestyles src="Template:StyledTable/styles.css" /> | <templatestyles src="Template:StyledTable/styles.css" /> | ||
[[File:IBM PC (5150) (photo).jpg|thumb|right|300px|IBM PC (5150). Source: Wikimedia Commons.]] | |||
This guide provides systematic, component-level troubleshooting for the '''IBM 5150'''. It covers POST beep codes, | This guide provides systematic, component-level troubleshooting for the '''IBM PC (5150)'''. It covers the POST audio beep codes, the complete numeric error code list, parity errors, video problems, keyboard 301 errors, floppy faults and known motherboard problems. The 5150 has no battery-backed CMOS — all hardware configuration is set through DIP switches SW1 and SW2 on the motherboard, so verify those before chasing a hardware fault. | ||
The POST is only a confidence test, not a comprehensive diagnostic. The absence of an error code does not prove the corresponding subsystem is good — for example, the lack of a 201 does not mean RAM is healthy, and the lack of a 301 does not mean the keyboard is healthy. | |||
== Preliminary & Power-up Checks == | == Preliminary & Power-up Checks == | ||
The 5150 has '''no on-board POST code output port''' | The 5150 has '''no on-board POST code output port''' — a hardware POST card plugged into an ISA slot will not show meaningful codes on this machine. Use the audio beep and the on-screen error number instead. | ||
=== POST sequence summary === | === POST sequence summary === | ||
On a healthy 5150, power-up produces: | On a healthy 5150, power-up produces: | ||
=== | # A single short beep after about five seconds. | ||
# The memory count appears in the top-left of the display. | |||
# The machine attempts to boot from the floppy in drive A, then falls back to [[IBM Cassette BASIC|Cassette BASIC]] if no boot disk is present. | |||
=== POST audio beep codes === | |||
{| class="wikitable styled-table" style="width:100%; text-align:center;" | {| class="wikitable styled-table" style="width:100%; text-align:center;" | ||
|+'''IBM 5150 POST audio beep codes''' | |+'''IBM 5150 POST audio beep codes''' | ||
! Pattern !! Meaning !! | ! Pattern !! Meaning | ||
|- | |||
| 1 short beep || POST OK | |||
|- | |||
| ''No beep, no video'' || PSU, CPU, clock, reset, or bank-0 RAM failure | |||
|- | |||
| 1 long + 1 short || System board failure | |||
|- | |||
| 1 long + 2 short || Video adapter failure (or, on the 10/27/82 BIOS, a corrupted HDD ROM at C8000) | |||
|- | |||
| 1 long + 3 short || EGA / VGA card failure (where supported) | |||
|- | |||
| Continuous short beeps || PSU fault | |||
|- | |||
| Repeating short beep cycles || RAM failure | |||
|} | |||
== Numeric POST Error Codes == | |||
When the POST detects an error on a subsystem that has already been initialised, it prints a numeric error code on the screen. The codes follow a "XYZZ" convention where the first one or two digits identify the failing subsystem (a "device number") and the remainder describes the specific failure. The device number followed by 00 indicates a successful test pass for that device. | |||
The table below is the complete IBM PC / XT / AT POST and advanced-diagnostic numeric error code list. Codes shaded with their "5150-relevant" subset are the ones most commonly seen on a 5150; the broader list is included for completeness because the 5150 ROM BIOS uses the same conventions as later IBM ROMs. | |||
=== 1xx — System board errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |||
| 101 || System board failed | |||
|- | |||
| 102 || BIOS ROM checksum error (PC, XT); Timer (AT) | |||
|- | |||
| 103 || BASIC ROM checksum error (PC, XT); Timer interrupt (AT) | |||
|- | |||
| 104 || Interrupt controller (PC, XT); Protected mode (AT) | |||
|- | |||
| 105 || Timer (PC, XT); Last 8042 command not accepted (AT) | |||
|- | |||
| 106 || Converting logic test failure | |||
|- | |||
| 107 || Adapter card or math coprocessor (NMI) | |||
|- | |||
| 108 || Timer bus test | |||
|- | |||
| 109 || DMA test error | |||
|- | |||
| 121 || Unexpected hardware interrupt | |||
|- | |||
| 131 || Cassette wrap test failed (often caused by a missing −5 V rail on the 64KB-256KB board) | |||
|- | |||
| 161 || System options error, battery failure (AT only) | |||
|- | |||
| 162 || CMOS RAM configuration error (AT only) | |||
|- | |||
| 163 || CMOS time and date not set (AT only) | |||
|- | |||
| 199 || User indicated configuration not correct | |||
|} | |||
=== 2xx — RAM errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |||
| 201 || Memory test error. On the 5150, the error number is in the form ''xyzz'' where ''x''=0 indicates failing memory on the planar (motherboard) and the remaining digits identify the bank and bit position. | |||
|- | |||
| 202 || Memory address error (address lines 0-15) | |||
|- | |||
| 203 || Memory address error (address lines 16-23) | |||
|- | |||
| 216 || Motherboard memory | |||
|} | |||
=== 3xx — Keyboard errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |||
| 301 || Keyboard did not respond to software reset, or a stuck key. A number preceding 301 (e.g. ''3D 301'') is the scan code of the stuck key. | |||
|- | |||
| 302 || User indicated keyboard error, or AT system unit is locked | |||
|- | |||
| 303 || Keyboard or system board error | |||
|- | |||
| 304 || Keyboard or system board error; CMOS does not match system | |||
|} | |||
=== 4xx — Monochrome display adapter errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |||
| 401 || [[IBM Monochrome Display Adapter|MDA]] memory test, horizontal sync frequency test, or video test failed | |||
|- | |||
| 408 || User indicated display attributes failure | |||
|- | |||
| 416 || User indicated character set failure | |||
|- | |||
| 424 || User indicated 80×25 mode failure | |||
|- | |||
| 432 || Parallel port test failed (on the MDA — the printer port is on the same card) | |||
|} | |||
=== 5xx — Colour graphics adapter errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |||
| 501 || [[IBM Color Graphics Adapter|CGA]] memory test failed, horizontal sync frequency test, or video test failed | |||
|- | |||
| 508 || User indicated display attribute failure | |||
|- | |||
| 516 || User indicated character set failure | |||
|- | |||
| 524 || User indicated 80×25 mode failure | |||
|- | |||
| 532 || User indicated 40×25 mode failure | |||
|- | |||
| 540 || User indicated 320×200 graphics mode failure | |||
|- | |||
| 548 || User indicated 640×200 graphics mode failure | |||
|- | |||
| 556 || Light pen test | |||
|- | |||
| 564 || User indicated screen paging test | |||
|} | |||
=== 6xx — Diskette drive / adapter errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |||
| 601 || [[IBM FDD Adapter|FDD adapter]] power-on diagnostics test failed | |||
|- | |||
| 602 || Diskette test failed (boot record not valid) | |||
|- | |||
| 603 || Diskette size error | |||
|- | |||
| 606 || Diskette verify function failed | |||
|- | |||
| 607 || Write-protected diskette | |||
|- | |||
| 608 || Bad command (diskette status returned) | |||
|- | |||
| 610 || Diskette initialisation failed | |||
|- | |||
| 611 || Time-out (diskette status returned) | |||
|- | |||
| 612 || Bad NEC FDC (diskette status returned) | |||
|- | |||
| 613 || Bad DMA (diskette status returned) | |||
|- | |- | ||
| | | 614 || DMA boundary error | ||
|- | |- | ||
| | | 621 || Bad seek (diskette status returned) | ||
|- | |- | ||
| | | 622 || Bad CRC (diskette status returned) | ||
|- | |- | ||
| | | 623 || Record not found (diskette status returned) | ||
|- | |- | ||
| | | 624 || Bad address mark (diskette status returned) | ||
|- | |- | ||
| | | 625 || Bad NEC seek (diskette status returned) | ||
|- | |||
| 626 || Diskette data compare error | |||
|} | |||
=== 7xx — 8087 math coprocessor errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |- | ||
| | | 701 || 8087 coprocessor test failure. If no 8087 is fitted, set SW1 bit 2 to OFF to disable the coprocessor test. | ||
|} | |} | ||
{| class="wikitable styled-table" style="width:100%;" | === 9xx — Parallel printer adapter errors === | ||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |- | ||
| | | 901 || Parallel printer adapter test failed | ||
|} | |||
=== 11xx — Asynchronous (RS-232) communications adapter errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |- | ||
| | | 1101 || Asynchronous communications adapter test failed | ||
|- | |- | ||
| | | 1102-1157 || Various register / interrupt / DSR / CTS test failures on the async adapter | ||
|} | |||
=== 13xx — Game adapter errors === | |||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |- | ||
| | | 1301 || Game control adapter test failed | ||
|- | |- | ||
| | | 1302 || Joystick test failed | ||
|} | |} | ||
=== | === 14xx — Printer errors === | ||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |||
| 1401 || Printer test failed | |||
|- | |||
| 1404 || Matrix printer failed | |||
|} | |||
== | === 17xx — Fixed disk (hard drive) errors === | ||
{| class="wikitable styled-table" style="width:100%; text-align:left;" | |||
! Code !! Meaning | |||
|- | |||
| 1701 || [[IBM Fixed Disk Adapter|Fixed Disk Adapter]] POST error | |||
|- | |||
| 1702 || Adapter error | |||
|- | |||
| 1703 || Drive error (seek) | |||
|- | |||
| 1704 || Adapter or drive error | |||
|- | |||
| 1705 || No record found | |||
|- | |||
| 1706 || Write fault error | |||
|- | |||
| 1707 || Track 0 error | |||
|- | |||
| 1708 || Head select error | |||
|- | |||
| 1710 || Read buffer overrun | |||
|- | |||
| 1711 || Bad address mark | |||
|- | |||
| 1713 || Data compare error | |||
|- | |||
| 1714 || Drive not ready | |||
|- | |||
| 1780 / 1781 || Disk 0 / Disk 1 failure | |||
|- | |||
| 1782 || Disk controller failure | |||
|} | |||
== | == Power-up Symptom Table == | ||
{| class="wikitable styled-table" style="width: | {| class="wikitable styled-table" style="width:100%;" | ||
! | ! Symptom !! Probable cause !! Action | ||
|- | |||
| No fan, no LED, no beep || Dead PSU; blown fuse; rear-panel switch || Test mains; check fuse; measure PSU rails with motherboard disconnected | |||
|- | |||
| Fan runs, no beep, no video || Bank-0 RAM, BIOS ROM (U33), or CPU || Reseat U33 and bank-0 RAM; probe clock at 8088 pin 19; try a known-good 8088 | |||
|- | |- | ||
| | | Fan runs, '''131''' error displays || −5 V rail is missing (cassette I/O test fails) || Recap/replace PSU; do '''not''' use an ATX adapter without −5 V | ||
|- | |- | ||
| | | Fan runs, '''201''' / "PARITY CHECK" error || Failed motherboard or expansion RAM || See [[#Parity errors|parity errors]] below | ||
|- | |- | ||
| | | Tantalum cap audibly pops, PSU latches off || Short-circuit tantalum on the motherboard or an ISA card || See [[IBM PC (5150) Capacitor Replacement Guide#Diagnostic Procedure for a Suspected Short-Circuit Tantalum|the cap guide's short-circuit diagnostic procedure]] | ||
|- | |- | ||
| | | Repeating cycle (boots part-way, resets) || Bad PSU under load; bad 8253 timer; bad bank-0 RAM || Measure +5 V under load | ||
|} | |} | ||
== | == No-beep / No-video Diagnostics == | ||
On a 5150, "dead machine" is most often one of: bank-0 RAM, the BIOS ROM, the CPU, or a missing −5 V rail. | |||
# Confirm '''+5 V''', '''+12 V''', '''−5 V''' and '''−12 V''' at the P8/P9 motherboard connector with the machine running. The −5 V rail is required — a 16KB-64KB board with no −5 V will silently fail the first 16 KB RAM test and halt with no audible or visual indication. | |||
# Reseat '''U33 (BIOS)''', '''U29-U32 (Cassette BASIC)''', the '''8088 CPU''', and all of bank-0 RAM. | |||
# Probe the '''8088 clock (pin 19)''' for a ~4.77 MHz square wave and the '''reset (pin 21)''' (low at power-on, high after Power Good). If clock is missing, suspect the 8284 clock generator or the 14.31818 MHz crystal. If reset is stuck low, suspect the 8284 or the Power Good signal. | |||
# Piggyback a known-good RAM chip on each bank-0 position in turn. A piggyback that makes the machine boot identifies the dead chip. | |||
# If the machine is still completely dead, consider swapping the BIOS in U33 for a diagnostic ROM (Ruud Baltissen's diagnostic ROM, or the Supersoft/Landmark diagnostic ROM) that runs even on a board the IBM BIOS POST cannot reach. | |||
== | == Parity Errors == | ||
The 5150 displays a numbered error followed by the text "PARITY CHECK 1" or "PARITY CHECK 2": | |||
The 5150 displays a numbered error followed by the text " | |||
* '''PARITY CHECK 1''' | * '''PARITY CHECK 1''' — the error is in motherboard RAM. | ||
* '''PARITY CHECK 2''' | * '''PARITY CHECK 2''' — the error is in expansion-card RAM (a parity error reported by an installed memory expansion card). | ||
If a four-digit number is shown (e.g. ''2004'') the format is '' | If a four-digit number is shown (e.g. ''2004''), the format is ''xyzz'' where ''x'' = 0 indicates motherboard, ''y'' is the bank, and ''zz'' is the bit. On the 64KB-256KB motherboard the banks are 00, 04, 08, 0C for banks 0-3. | ||
# Reseat the chip at the indicated bank and bit position. | # Reseat the chip at the indicated bank and bit position. | ||
# If reseating does not fix it, replace that single chip with a known-good 4164 (or 4116 on the | # If reseating does not fix it, replace that single chip with a known-good 4164 (or 4116 on the 16KB-64KB board). | ||
# If the position moves around between resets, suspect '''DRAM refresh''' | # If the failing position moves around between resets, suspect '''DRAM refresh''' — the 8237 DMA controller (U35) generates refresh cycles. A bad 8237 produces random RAM errors that move across all banks. | ||
A failed chip in bank 0 produces a '''completely silent dead motherboard''' with no beep, because the POST cannot get far enough to use the speaker. This is one of the most common 5150 faults and is easily mistaken for a CPU or PSU fault. | |||
== Display & Video Diagnostics == | |||
The 5150 has no on-board video — a faulty video card is the most likely cause of a no-video symptom even when the machine is otherwise alive. | |||
=== | === No video, but POST beep is normal === | ||
* Confirm the video adapter card ([[IBM Monochrome Display Adapter|MDA]] or [[IBM Color Graphics Adapter|CGA]]) is firmly seated. | |||
* Check the monitor cable and the monitor itself. | |||
* If both MDA and CGA are fitted, SW1 bits select which is the boot adapter. See the IBM 5150 Technical Reference for the exact bit layout. | |||
=== | === Garbled text or random characters === | ||
* Suspect the video adapter's character ROM or video RAM (not motherboard RAM). | |||
* Cracked solder joints on the DE-9 output connector. | |||
== Keyboard & I/O Failures == | == Keyboard & I/O Failures == | ||
=== 301 error (keyboard) === | === 301 error (keyboard) === | ||
* The keyboard did not return | |||
* Reseat the DIN-5 connector. | * The keyboard did not return the expected response within the timeout. | ||
* Swap to a known-good Model F. If the suspect keyboard works on another 5150 or XT, the 5150's keyboard interface is at fault | * Reseat the DIN-5 connector at the rear of the case. | ||
* '''Model F variants''' | * Swap to a known-good [[IBM Model F (83-key)]]. If the suspect keyboard works on another 5150 or XT, the 5150's keyboard interface is at fault — check U36 (the 8255 PPI) and the 7406 keyboard data buffer. | ||
* '''Model F variants:''' the 83-key XT-style Model F works on the 5150 and 5160. The 84-key AT-style Model F (P/N 6450200) and the 101-key Model M will not work without a protocol converter. | |||
=== Cassette port silence === | === Cassette port silence === | ||
A '''131''' error on the 10/27/82 BIOS indicates the cassette I/O test failed. On the 64KB-256KB board, this is most often caused by the −5 V rail being missing rather than a real cassette fault. Verify −5 V at the PSU before chasing cassette hardware. | |||
=== Floppy faults === | === Floppy faults === | ||
* '''Drive light stays on continuously''' | |||
* '''Drive light flickers but no read''' | * '''Drive light stays on continuously''' — cable inserted backwards, or termination resistor missing on the last drive. | ||
* '''Drive seeks | * '''Drive light flickers but no read''' — head needs cleaning; positioner rail lubricant has hardened; or the belt has failed (on a [[Tandon TM100-2]]). | ||
* '''POST 6xx errors''' & | * '''Drive seeks but read errors''' — head alignment, or the floppy itself is media-failed. | ||
* '''POST 6xx errors''' — see the [[#6xx — Diskette drive / adapter errors|6xx table]] above. Reseat the [[IBM FDD Adapter|FDD Adapter]] first. | |||
== Known Problems and Issues (per minuszerodegrees.net) == | |||
The following are well-documented 5150-specific quirks gathered from minuszerodegrees.net's long-running motherboard failure history. Each one has caught restorers out at least once, often more. | |||
=== Limitations of early BIOS revisions === | |||
The first two BIOS revisions (04/24/81, part number 5700051, and 10/19/81, part number 5700671) have two design limitations: they recognise only 544 KB of RAM, and they ignore BIOS expansion ROMs in installed cards — so EGA, 5150-compatible VGA, and hard disk controllers will not work on either of those BIOSes. Upgrade to the 10/27/82 (1501476) BIOS to remove both limitations. | |||
=== Bugs in the 10/27/82 BIOS === | |||
The final 5150 BIOS (10/27/82, part number 1501476) has two well-documented bugs: | |||
* '''Less-than-four-banks bug.''' If the motherboard does not have all four banks of RAM populated (and SW1/SW2 not set accordingly), the POST behaves incorrectly — for example, it can claim more motherboard RAM than is actually fitted. | |||
* '''C8000 ROM corruption bug.''' If a hard disk controller's BIOS expansion ROM (typically at C8000) becomes corrupted (except for its first two bytes), the BIOS is supposed to display "C800 ROM" on-screen. Instead, a software bug causes the BIOS to beep "1 long + 2 short", which is the standard video failure pattern. A perfectly-working video card can therefore be misdiagnosed as faulty when the actual fault is a corrupted HDD controller ROM. | |||
=== Short-circuit tantalum capacitors === | |||
Tantalum capacitors are located on the motherboard, expansion cards, and drives. One going short-circuit will stop the PSU from working — although the PSU fan may still turn. The board will appear dead. See [[IBM PC (5150) Capacitor Replacement Guide]] for the full diagnostic and replacement procedure. | |||
=== Minimum RAM requirement for DOS === | |||
If you try to boot DOS with insufficient conventional memory for that version, DOS does not always present a friendly error message. The machine may simply hang at the boot prompt or reset. | |||
=== POST cards do not work on the 5150 === | |||
The 5150's POST does '''not''' output POST codes to I/O port 80h (the port a hardware POST card reads). Numbers shown by a POST card plugged into a 5150 are unrelated to the actual POST progress. | |||
=== Modern ATX PSU adapters lack −5 V === | |||
A modern ATX-to-P8/P9 adapter does not generate the −5 V rail. The implications are different on the two motherboard revisions: | |||
* '''16KB-64KB:''' the machine will not work at all and will appear dead. The 4116 DRAM requires −5 V; without it the first 16 KB RAM test silently fails and the POST halts. | |||
* '''64KB-256KB:''' the machine displays a '''131''' error on-screen. Chip U1, part of the cassette circuitry, requires −5 V. | |||
A few early IBM expansion cards also use the −5 V rail. | |||
=== RAM failure in motherboard bank 0 === | |||
Vintage RAM chips have a relatively high failure rate. The failure of any chip in the 5150's first bank of RAM (bank 0) results in what appears to be a 'dead' motherboard (no beep, no video). This is one of many causes of the "dead" symptom — do not assume bad RAM in bank 0 before trying the [[#No-beep / No-video Diagnostics|no-beep diagnostic sequence]] above. | |||
=== Motherboard decodes F0000 to F3FFF === | |||
The 5150 motherboard decodes the F0000-F3FFF memory range for read operations even though there is nothing in that range. Mapping an expansion card's BIOS ROM into that range causes bus contention (both the card and the motherboard simultaneously drive the data bus). This may appear to work in many cases — the card "wins" the bus tug-of-war — but the behaviour is not reliable. | |||
=== MS-DOS 3.2 === | |||
MS-DOS 3.20 (the Microsoft-branded version, not IBM PC DOS) does '''not''' work on 5150 motherboards fitted with either the 04/24/81 or 10/19/81 BIOS revisions. MS-DOS 3.21 fixes the issue. Use PC DOS 3.3, which was the common choice. | |||
=== Interrupt bug in early Intel 8088 CPUs === | |||
Early-stepping Intel 8088 CPUs have a documented interrupt bug that affects certain prefix sequences. If the system fails reproducibly on specific software with no other apparent fault, try a later-stepping 8088 (date code 1982 or later). | |||
=== V20 swap compatibility === | |||
Swapping the 8088 for an NEC V20 gives a 20-30% speed boost on most code, but the V20 emulates an 80186-class instruction set that breaks a small number of programs. If a known-good machine suddenly fails to run an old program after a V20 swap, drop the original 8088 back in to confirm. | |||
=== 16-bit ISA cards in the 5150's 8-bit slots === | |||
Some 16-bit ISA cards advertised as "8-bit slot compatible" do '''not''' work in the 5150's 8-bit slots. Possible causes: | |||
* The card requires the wider AT-class slot spacing. | |||
* The card needs to be reconfigured for 8-bit mode by switches, jumpers, or in some cases configuration software. | |||
If the card refuses to work and SW1 is correct, try the card in a [[IBM PC XT (5160)]] first to confirm it works in any 8-bit slot. | |||
== Component-level Tests == | == Component-level Tests == | ||
| Line 133: | Line 419: | ||
| 8088 pin 40 (Vcc) || +5 V || Main logic rail | | 8088 pin 40 (Vcc) || +5 V || Main logic rail | ||
|- | |- | ||
| 8088 pin 19 (CLK) || ~4.77 MHz square wave || From 8284 clock generator (15. | | 8088 pin 19 (CLK) || ~4.77 MHz square wave || From 8284 clock generator | ||
|- | |||
| 8088 pin 21 (RESET) || Low at power-on, high after Power Good || | |||
|- | |||
| DRAM Vcc || +5 V || | |||
|- | |||
| Power Good (P8) || +5 V, rises ~100-500 ms after +5 V is stable || A stuck-low Power Good keeps the CPU in reset | |||
|} | |||
== ⚠️ Power-supply RIFA capacitor and tantalum shorts == | |||
Two age-related failures are near-universal on this era of IBM hardware: | |||
* '''RIFA mains-filter capacitors''' in the power supply are metallised-paper parts that crack and fail '''short''' with age, producing acrid smoke shortly after power-on. Replace them pre-emptively with modern X2-class parts.<ref name="ibm_rifa">[https://www.minuszerodegrees.net/failure.htm minuszerodegrees.net — IBM failure symptoms]; [https://www.classic-computers.org.nz/blog/2010-11-04-restoring-an-IBM-xt.htm Repairing and Restoring an IBM XT]; and [https://retrorepairsandrefurbs.com/2025/05/15/1983-ibm-pc-5160-xt-power-supply-rebuild-modifications/ Adam's Vintage Computer Restorations]. Source for the RIFA mains-filter capacitor failing short (smoke) and the tantalum capacitors failing short and preventing the PSU from firing.</ref> | |||
* '''Tantalum capacitors''' on the planar (system board) and on ISA cards fail short with age. A shorted tantalum will '''prevent the power supply from starting''' (dead machine, PSU protection latched) — look for a cracked or discoloured tantalum and lift suspect ones to find the short.<ref name="ibm_rifa">[https://www.minuszerodegrees.net/failure.htm minuszerodegrees.net — IBM failure symptoms]; [https://www.classic-computers.org.nz/blog/2010-11-04-restoring-an-IBM-xt.htm Repairing and Restoring an IBM XT]; and [https://retrorepairsandrefurbs.com/2025/05/15/1983-ibm-pc-5160-xt-power-supply-rebuild-modifications/ Adam's Vintage Computer Restorations]. Source for the RIFA mains-filter capacitor failing short (smoke) and the tantalum capacitors failing short and preventing the PSU from firing.</ref> | |||
IBM PC/XT switching supplies also need a '''minimum load''' to start, so a bare supply on the bench may not run without a dummy load.<ref name="ibm_rifa">[https://www.minuszerodegrees.net/failure.htm minuszerodegrees.net — IBM failure symptoms]; [https://www.classic-computers.org.nz/blog/2010-11-04-restoring-an-IBM-xt.htm Repairing and Restoring an IBM XT]; and [https://retrorepairsandrefurbs.com/2025/05/15/1983-ibm-pc-5160-xt-power-supply-rebuild-modifications/ Adam's Vintage Computer Restorations]. Source for the RIFA mains-filter capacitor failing short (smoke) and the tantalum capacitors failing short and preventing the PSU from firing.</ref> | |||
== POST codes and diagnostics (deep dive) == | |||
A 5150 that fails POST before the video is initialised looks completely dead — no picture and no beep — so treat a silent, pictureless machine as a power / planar / CPU / ROM fault, not a video fault.<ref name="post5150">[https://minuszerodegrees.net/5150/post/5150%20-%20POST%20-%20Detailed%20breakdown.htm IBM 5150 – POST – Detailed breakdown] and [https://minuszerodegrees.net/5150/post/5150%20-%20POST%20-%20Some%20errors.htm Some errors], MinusZeroDegrees; and [http://ps-2.kev009.com/pcpartnerinfo/ctstips/49fe.htm IBM PC and PS/2 – Error codes]. Source for the 1xx–6xx error-code families, the 201 memory decode (bank/bit), the 301 keyboard decode, and the dead-board behaviour when POST fails before the video step.</ref> | |||
=== Beep summary === | |||
{| class="wikitable styled-table" | |||
! Beep pattern !! Meaning | |||
|- | |||
| 1 short || POST passed (normal) | |||
|- | |||
| 2 short || POST error — read the numeric code on screen | |||
|- | |||
| Continuous, repeating, or no beep || Power supply, system board, or speaker | |||
|- | |||
| 1 long + 1 short || System board | |||
|- | |||
| 1 long + 2 short || Display adapter (MDA / CGA) | |||
|} | |||
=== Error-code families === | |||
The numeric codes are grouped by device; the leading digits identify the subsystem: | |||
{| class="wikitable styled-table" | |||
! Code !! Subsystem | |||
|- | |||
| 1xx || System board (planar) | |||
|- | |||
| 2xx || Memory (RAM) | |||
|- | |- | ||
| | | 3xx || Keyboard | ||
|- | |- | ||
| | | 4xx || Monochrome display adapter (MDA) | ||
|- | |- | ||
| | | 5xx || Colour graphics adapter (CGA) | ||
|- | |- | ||
| | | 6xx || Floppy drive / adapter | ||
|} | |} | ||
=== | === 201 (memory) decode === | ||
A '''201''' is a RAM failure, and the four characters in front of it locate the bad chip: in the '''xyzz 201''' form, '''x = 0''' means the fault is on the planar, '''y''' is the failing bank (0–3) and '''zz''' identifies the failing bit or the parity chip. Use that to go straight to the offending DRAM rather than swapping a whole bank.<ref name="post5150">[https://minuszerodegrees.net/5150/post/5150%20-%20POST%20-%20Detailed%20breakdown.htm IBM 5150 – POST – Detailed breakdown] and [https://minuszerodegrees.net/5150/post/5150%20-%20POST%20-%20Some%20errors.htm Some errors], MinusZeroDegrees; and [http://ps-2.kev009.com/pcpartnerinfo/ctstips/49fe.htm IBM PC and PS/2 – Error codes]. Source for the 1xx–6xx error-code families, the 201 memory decode (bank/bit), the 301 keyboard decode, and the dead-board behaviour when POST fails before the video step.</ref> | |||
== | === 301 (keyboard) decode === | ||
A '''301''' means POST did not receive the AA self-test byte from the keyboard in time, or a stuck key was found; a stuck key is reported as its scan code, e.g. "301 xx". Check the keyboard and its cable before replacing the keyboard.<ref name="post5150">[https://minuszerodegrees.net/5150/post/5150%20-%20POST%20-%20Detailed%20breakdown.htm IBM 5150 – POST – Detailed breakdown] and [https://minuszerodegrees.net/5150/post/5150%20-%20POST%20-%20Some%20errors.htm Some errors], MinusZeroDegrees; and [http://ps-2.kev009.com/pcpartnerinfo/ctstips/49fe.htm IBM PC and PS/2 – Error codes]. Source for the 1xx–6xx error-code families, the 201 memory decode (bank/bit), the 301 keyboard decode, and the dead-board behaviour when POST fails before the video step.</ref> | |||
=== | == References == | ||
<references /> | |||
== References == | |||
* IBM, ''IBM 5150 Technical Reference'' (part 6025005, August 1981) — contains the full schematics, BIOS listing, and DIP-switch reference. [https://www.minuszerodegrees.net/manuals/IBM_5150_Technical_Reference_6025005_AUG81.pdf PDF on the minuszerodegrees mirror]. | |||
* | * [https://minuszerodegrees.net/5150/problems/5150_known_problems_issues.htm IBM 5150 — Known Problems / Issues], minuszerodegrees.net (Brad Parker). Primary source for the "Known Problems" section reproduced above. | ||
* | * [https://minuszerodegrees.net/5150/post/5150%20-%20POST%20-%20Some%20errors.htm IBM 5150 — POST — Some errors (on-screen, or otherwise)], minuszerodegrees.net. | ||
* | * [https://minuszerodegrees.net/5150/bios/5150_bios_revisions.htm 5150 BIOS Revisions], minuszerodegrees.net. | ||
* | * [https://www.stanislavs.org/helppc/diagnostic_codes.html DIAGS — IBM PC Diagnostic Error Codes], Stanislavs.org / HelpPC quick-reference. Source for the comprehensive POST numeric error code list reproduced above. | ||
[[Category:IBM]] | [[Category:IBM]] | ||
[[Category:Troubleshooting Guides]] | [[Category:Troubleshooting Guides]] | ||