#
Upgrading & Repairing PCs Eighth Edition

#

# - 21 -

# Software and Hardware Diagnostic Tools

- Diagnostics Software
- The Power-On Self Test (POST)
  - What Is Tested?
  - POST Audio Error Codes
  - POST Visual Error Codes
  - I/O Port POST Codes
- IBM Diagnostics
  - IBM Advanced Diagnostics
- General-Purpose Diagnostics Programs
  - AMIDiag
  - Checkit Pro
  - Microscope
  - Norton Utilities Diagnostics
  - PC Technician
  - QAPlus/FE
- Disk Diagnostics
  - Drive Probe
  - Disk Manager
- Data Recovery Utilities
- Shareware and Public-Domain Diagnostics

#

Diagnostic software, the kind that comes with your computer as well as the types of available third-party software, is vitally important to you any time your computer malfunctions or you begin the process of upgrading a system component or adding a new device. Even when you attempt a simple procedure, such as adding a new adapter card, or begin the sometimes tedious process of troubleshooting a hardware problem that causes a system crash or lockup when you are working, you need to know more about your system than you can learn from the packing list sent with the system. Diagnostic software provides the portal through which you can examine your system hardware and the way your components are working.

This chapter describes three levels of diagnostic software (POST, system, and advanced) included with your computer or available from your computer manufacturer. The chapter describes how you can get the most from this software. It also details IBM's audio codes and error codes, which are similar to the error codes used by most computer manufacturers, and examines aftermarket diagnostics and public-domain diagnostic software.

## Diagnostics Software

Several types of diagnostic software are available for PC-compatible systems. This software, some of which is included with the system when purchased, assists users in identifying many problems that can occur with a computer's components. In many cases, these programs can do most of the work in determining which PC component is defective. There are three programs that can help you locate a problem; each program is more complex and powerful than the one that precedes it. The diagnostic programs include the following:

- POST. The Power-On Self Test operates whenever any PC is powered up (switched on).
- Manufacturer supplied diagnostics software. Many of the larger manufacturers--especially high-end, name-brand manufacturers such as IBM, Compaq, Hewlett Packard, and others--make special diagnostics software that is expressly designed for their systems. This manufacturer-specific software normally consists of a suite of tests that thoroughly examines the system. IBM's diagnostics software is on the reference disk for the PS/2 systems, and on an advanced diagnostics disk for their other systems. Both Compaq and Hewlett- Packard also produce diagnostics that are designed for a technician to use in troubleshooting his or her respective systems. In some cases these diagnostics can be downloaded from their electronic bulletin boards, or it may have to be purchased from the manufacturer. Some of the PC-compatible vendors like Gateway and Dell include a limited version of one of the aftermarket packages that has been customized for their systems. In some cases, however, the diagnostics are installed on a special partition on the hard drive and can be accessed during bootup. This is a convenient way for system manufacturers to make sure you always have diagnostics available.
- Aftermarket diagnostics software. There are a number of manufacturers making general purpose diagnostics software for PC-compatible systems. This includes utilities--Symantec's Norton Utilities, Microscope by Micro 2000, Qa-Plus by Diagsoft, PC-Technician by Windsor Technologies, and others--that provide detailed diagnostics of any PC-compatible systems. This chapter also mentions software from numerous other companies.

Many computer operators use the first and last of these software systems to test and troubleshoot most systems--the POST tests and a third-party diagnostic package.

Manufacturer diagnostics can sometimes be expensive, but they are usually complete and work well with the systems they are designed for.

## The Power-On Self Test (POST)

When IBM first began shipping the IBM PC in 1981, it included safety features that had never been seen in a personal computer. These features were the POST and parity-checked memory. The parity-checking feature is explained in Chapter 7, "Memory." The following provides much more detail on the POST, a series of program routines buried in the motherboard ROM-BIOS chip that tests all the main system components at power-on time. This program series causes the delay when you turn on an IBM-compatible system; the POST is executed before the computer loads the operating system.

### What Is Tested?

Whenever you start up your computer, it automatically performs a series of tests that check the primary components in your system. Items such as the CPU, ROM, mother-board support circuitry, memory, and major peripherals (such as an expansion chassis) are tested. These tests are brief and not very thorough compared with available disk-based diagnostics. The POST process provides error or warning messages whenever a faulty component is encountered.

Although the diagnostics performed by the system POST are not always very thorough, they are the first line of defense, especially in handling severe motherboard problems. If the POST encounters a problem severe enough to keep the system from operating properly, it halts bootup of the system and produces an error message that often leads you directly to the cause of the problem. Such POST-detected problems are sometimes called fatal errors. The POST tests normally provide three types of output messages: audio codes, display-screen messages, and hexadecimal numeric codes to an I/O port address.

### POST Audio Error Codes

POST audio error codes usually are audio codes consisting of a number of beeps that identify the faulty component. If your computer is functioning normally, you hear one short beep when the system starts up. If a problem is detected, a different number of beeps sound--sometimes in a combination of short and long beeps. These BIOS- dependent codes can vary among different BIOS manufacturers. Table 21.1 lists the beep codes for IBM systems and the problem indicated by each series of beeps.

#### Table 21.1 IBM POST Audio Error Codes and Indicated Problem

Audio Code | Sound | Problem (Fault Domain)
1 short beep | . | Normal POST-system OK
2 short beeps | .. | POST error-error code
No beep |  | Power supply, system board
Continuous beep | _____________ | Power supply, system board
Repeating short beeps | ...... | Power supply, system board
One long, one short beep | -. | System board
One long, two short beeps | -.. | Display adapter (MDA, CGA)
One long, three short beeps | -... | Enhanced Graphics Adapter (EGA)
Three long beeps | - - - | 3270 keyboard card

. = short beep
- = long beep

In Table 21.2, the Audio POST Codes are listed for AMI BIOS. Tables 21.3 and 21.4 list audio codes for Phoenix BIOS. You'll notice that both lists are far superior to the IBM fatal error codes.

#### Table 21.2 AMI BIOS Audio POST Codes

Beep Code | Fatal Error
1 short | DRAM refresh failure
2 short | Parity circuit failure
3 short | Base 64K RAM failure
4 short | System timer failure
5 short | Processor failure
6 short | Keyboard controller Gate A20 error
7 short | Virtual mode exception error
8 short | Display memory Read/Write test failure
9 short | ROM BIOS checksum failure
10 short | CMOS Shutdown Read/Write error
11 short | Cache Memory error
Beep Code | Nonfatal Errors
1 long, 3 short | Conventional/extended memory failure
1 long, 8 short | Display/retrace test failed

#### Table 21.3 Phoenix BIOS Fatal System Board Errors

Beep Code | Code at Port 80h | Description
None | 01h | CPU register test in progress
1-1-3 | 02h | CMOS write/read failure
1-1-4 | 03h | ROM BIOS checksum failure
1-2-1 | 04h | Programmable interval timer failure
1-2-2 | 05h | DMA initialization failure
1-2-3 | 06h | DMA page register write/read failure
1-3-1 | 08h | RAM refresh verification failure
None | 09h | First 64K RAM test in progress
1-3-3 | 0Ah | First 64K RAM chip or data line failure, multibit
1-3-4 | 0Bh | First 64K RAM odd/even logic failure
1-4-1 | 0Ch | Address line failure first 64K RAM
1-4-2 | 0Dh | Parity failure first 64K RAM
2-1-1 | 10h | Bit 0 first 64K RAM failure
2-1-2 | 11h | Bit 1 first 64K RAM failure
2-1-3 | 12h | Bit 2 first 64K RAM failure
2-1-4 | 13h | Bit 3 first 64K RAM failure
2-2-1 | 14h | Bit 4 first 64K RAM failure
2-2-2 | 15h | Bit 5 first 64K RAM failure
2-2-3 | 16h | Bit 6 first 64K RAM failure
2-2-4 | 17h | Bit 7 first 64K RAM failure
2-3-1 | 18h | Bit 8 first 64K RAM failure
2-3-2 | 19h | Bit 9 first 64K RAM failure
2-3-3 | 1Ah | Bit 10 first 64K RAM failure
2-3-4 | 1Bh | Bit 11 first 64K RAM failure
2-4-1 | 1Ch | Bit 12 first 64K RAM failure
2-4-2 | 1Dh | Bit 13 first 64K RAM failure
2-4-3 | 1Eh | Bit 14 first 64K RAM failure
2-4-4 | 1Fh | Bit 15 first 64K RAM failure
3-1-1 | 20h | Slave DMA register failure
3-1-2 | 21h | Master DMA register failure
3-1-3 | 22h | Master interrupt mask register failure
3-1-4 | 23h | Slave interrupt mask register failure
None | 25h | Interrupt vector loading in progress
3-2-4 | 27h | Keyboard controller test failure
None | 28h | CMOS power failure/checksum calculation in progress
None | 29h | Screen configuration validation in progress
3-3-4 | 2Bh | Screen initialization failure
3-4-1 | 2Ch | Screen retrace failure
3-4-2 | 2Dh | Search for video ROM in progress
None | 2Eh | Screen running with video ROM
None | 30h | Screen operable
None | 31h | Monochrome monitor operable
None | 32h | Color monitor (40 column) operable
None | 33h | Color monitor (80 column) operable

#### Table 21.4 onfatal System Board Errors

Beep Code | Code at Port 80h | Description
4-2-1 | 34h | Timer tick interrupt test in progress or failure
4-2-2 | 35h | Shutdown test in progress or failure
4-2-3 | 36h | Gate A20 failure
4-2-4 | 37h | Unexpected interrupt in protected mode
4-3-1 | 38h | RAM test in progress or address failure > FFFFh
4-3-3 | 3Ah | Interval timer Channel 2 test or failure
4-3-4 | 3Bh | Time-of-day clock test or failure
4-4-1 | 3Ch | Serial port test or failure
4-4-2 | 3Dh | Parallel port test or failure
4-4-3 | 3Eh | Math coprocessor test or failure
Low 1-1-2 | 41h | System board select failure
Low 1-1-3 | 42h | Extended CMOS RAM failure

### POST Visual Error Codes

On the XT, AT, PS/2, and most compatibles, the POST also displays on the system monitor the test of system memory. The last number displayed is the amount of memory that tested properly. For example, a modern system might display the following:

    32768 KB OK

In most cases, the number displayed by the memory test should agree with the total amount of memory installed on your system motherboard, including conventional and extended memory. Some systems display a slightly lower total because they deduct all or part of the 384K of UMA (Upper Memory Area) from the count. The RAM on an expanded memory card is not tested by the POST and does not count in the numbers reported. However, if you are using an expanded memory driver, such as EMM386.EXE or Quarterdeck's QEMM, to configure extended memory installed on the motherboard as expanded, the POST executes before this driver is loaded so that all installed memory is counted. If the POST memory test stops short of the expected total, the number displayed often indicates how far into system memory a memory error lies. This number alone is a valuable troubleshooting aid.

If an error is detected during the POST procedures, an error message is displayed on-screen. These messages usually are in the form of a numeric code several digits long; for example, 1790-Disk 0 Error. The information in the hardware-maintenance service manual identifies the malfunctioning component.

### I/O Port POST Codes

A lesser-known feature of the POST is that at the beginning of each POST, the BIOS sends test codes to a special I/O port address. These POST codes can be read only by a special adapter card plugged into one of the system slots. These cards originally were designed to be used by the system manufacturers for burn-in testing of the motherboard during system manufacturing without the need for a video display adapter or display. Several companies now make these cards available to technicians. Micro 2000, JDR Microdevices, Data Depot, Ultra-X, Quarterdeck, and Trinitech are just a few manufacturers of these POST cards.

Here are some Web sites to visit for information on some of the POST cards. The first site is the home of Microscope, the second JDR Microdevices, which sells a large variety of specialized electronics, and the final is a link to a PHD16 post card:

http://sacb.co.za/dion/micro2.htm

http://www.jdr.com/

http://www.merriweb.com.au/cblock/phd16.html

When one of these adapter cards is plugged into a slot, during the POST you see two-digit hexadecimal numbers flash on a display on the card. If the system stops unexpectedly or hangs, you can just look at the two-digit display on the card for the code indicating the test in progress during the hang. This step usually identifies the failed part.

Most BIOS on the market in systems with an ISA or EISA bus output the POST codes to I/O port address 80h. Compaq is different: its systems send codes to port 84h. IBM PS/2 models with ISA bus slots, such as the Model 25 and 30, send codes to port 90h. Some EISA systems send codes to port 300h (most EISA systems also send the same codes to 80h). IBM MCA bus systems universally send codes to port 680h.

Several cards read only port address 80h. This port address is certainly the most commonly used and works in most situations, but those cards would not work in Compaq systems, some EISA systems, and IBM PS/2 systems. A POST card designed specifically for the PS/2 MCA bus needs to read only port address 680h because the card cannot be used in ISA or EISA bus systems anyway.

> NOTE: With all these different addresses, make sure that the card you purchase reads the port addresses you need.

The two most common types of POST cards are those that plug into the 8-bit connector that is a part of the ISA or EISA bus, and those that plug into the MCA bus. Some companies offer both types of POST cards--one for MCA bus systems and one for ISA/EISA bus systems. Micro 2000 and Data Depot do not offer a separate MCA bus card; rather, they have slot adapters that enable their existing ISA bus cards to work in MCA bus systems as well as in ISA and EISA systems. Most other companies offer only ISA/EISA POST cards and ignore the MCA bus.

The POST I/O port error codes for various BIOS are listed in the 6th edition of this book, located on the CD.

## IBM Diagnostics

IBM systems usually have two levels of diagnostics software. One is a general-purpose diagnostics that is more user-oriented, and the other is a technician-level program that can be somewhat cryptic at times. In many cases, both programs are provided free with the system when it is purchased, and in some cases, the diagnostics and documentation have to be purchased separately. Because the troubleshooting procedures for most systems these days are fairly simple, most people have no problems running the diagnostics software without any official documentation. IBM runs a BBS system that has virtually all of its general and advanced diagnostics available free for downloading. You can find the number for this BBS listed in the vendor list in Appendix B.

### IBM Advanced Diagnostics

For technician-level diagnostics, IBM sells hardware-maintenance and service manuals for each system, which include the Advanced Diagnostics disks for that system. These disks contain the real diagnostics programs and, combined with the hardware- maintenance service manuals, represent the de facto standard diagnostics information and software for IBM and compatible systems. For PS/2 machines, IBM includes the Advanced Diagnostics on the Reference Disk that comes with the system; however, the instructions for using the diagnostics are still found in the service manuals available separately.

If you need a copy of the Advanced Diagnostics for any IBM system, check the IBM National Support Center (NSC) Bulletin Board System (BBS). The IBM BBS has virtually all of the IBM Advanced Diagnostics and Reference Disks available for download at no charge! They are stored on the BBS in a compressed disk image format, and you will need one of two utilities to uncompress the file depending on how it was originally compressed. Follow the instructions presented online for more information on which uncompress program you need. The phone number for the IBM NSC BBS is listed in the Vendor list under the IBM PC Company.

These programs produce error messages in the form of numbers you can use to identify the cause of a wide range of problems. The number codes used are the same as those used in the POST and general-diagnostics software. The meaning of the numbers is consistent across all IBM diagnostic programs. This section explores the advanced diagnostics and lists most of the known error-code meanings. IBM constantly adds to this error-code list as it introduces new equipment.

Using IBM Advanced Diagnostics

If you have a PS/2 system with the MCA (Micro Channel Architecture) bus slots (models produced later than the Models 25 to 40), you may already have IBM's Advanced Diagnostics, even if you don't know it. These diagnostics are usually hidden on the PS/2 Reference Disk. To access these diagnostics, boot the PS/2 Reference Disk. When the main menu is displayed, press Ctrl+A (for Advanced). The program changes to the Advanced Diagnostics menu. In some of the PS/2 systems, the Advanced Diagnostics were large enough to require a separate disk or disks. All the PS/2 Reference and Diagnostics disks are available for downloading on the IBM NSC BBS (see Appendix A).

Examining Error Codes

Most personal computer error codes for the POST, general diagnostics, and advanced diagnostics are represented by the display of the device number followed by two digits other than 00. When the tests display the device number plus the number 00, they indicate that a test was completed without an error being found.

The following list is a compilation from various sources including technical reference manuals, hardware-maintenance service manuals, and hardware-maintenance reference manuals. In each three-digit number, the first number indicates a device. The other two digits indicate the exact problem. For example, 7xx indicates the math coprocessor. A display of 700 means all is well. Any other number (701 to 799) indicates that the math coprocessor is bad or having problems. The last two digits (01 to 99) indicate what is wrong. Table 21.5 lists the basic error codes and their descriptions.

#### Table 21.5 Personal Computer Error Codes

Code | Description
1xx | System Board errors
2xx | Memory (RAM) errors
3xx | Keyboard errors
4xx | Monochrome Display Adapter (MDA) errors
4xx | PS/2 System Board Parallel Port errors
5xx | Color Graphics Adapter (CGA) errors
6xx | Floppy Drive/Controller errors
7xx | Math Coprocessor errors
9xx | Parallel Printer Adapter errors
10xx | Alternate Parallel Printer Adapter errors
11xx | Primary Async Communications (serial port COM1:) errors
12xx | Alternate Async Communications (serial COM2:, COM3:, and COM4:)
13xx | Game Control Adapter errors
14xx | Matrix Printer errors
15xx | Synchronous Data Link Control (SDLC) Communications Adapter errors
16xx | Display Station Emulation Adapter (DSEA) errors (5520, 525x)
17xx | ST-506/412 Fixed Disk and Controller errors
18xx | I/O Expansion Unit errors
19xx | 3270 PC Attachment Card errors
20xx | Binary Synchronous Communications (BSC) Adapter errors
21xx | Alternate Binary Synchronous Communications (BSC) Adapter errors
22xx | Cluster Adapter errors
23xx | Plasma Monitor Adapter errors
24xx | Enhanced Graphics Adapter (EGA) errors
24xx | PS/2 System Board Video Graphics Array (VGA) errors
25xx | Alternate Enhanced Graphics Adapter (EGA) errors
26xx | XT or AT/370 370-M (Memory) and 370-P (Processor) Adapter errors
27xx | XT or AT/370 3277-EM (Emulation) Adapter errors
28xx | 3278/79 Emulation Adapter or 3270 Connection Adapter errors
29xx | Color/Graphics Printer errors
30xx | Primary PC Network Adapter errors
31xx | Secondary PC Network Adapter errors
32xx | 3270 PC or AT Display and Programmed Symbols Adapter errors
33xx | Compact Printer errors
35xx | Enhanced Display Station Emulation Adapter (EDSEA) errors
36xx | General Purpose Interface Bus (GPIB) Adapter errors
38xx | Data Acquisition Adapter errors
39xx | Professional Graphics Adapter (PGA) errors
44xx | 5278 Display Attachment Unit and 5279 Display errors
45xx | IEEE Interface Adapter (IEEE-488) errors
46xx | A Real-Time Interface Coprocessor (ARTIC) Multiport/2 Adapter errors
48xx | Internal Modem errors
49xx | Alternate Internal Modem errors
50xx | PC Convertible LCD errors
51xx | PC Convertible Portable Printer errors
56xx | Financial Communication System errors
70xx | Phoenix BIOS/Chip Set Unique Error Codes
71xx | Voice Communications Adapter (VCA) errors
73xx | 3 1/2-inch External Disk Drive errors
74xx | IBM PS/2 Display Adapter (VGA card) errors
74xx | 8514/A Display Adapter errors
76xx | 4216 PagePrinter Adapter errors
84xx | PS/2 Speech Adapter errors
85xx | 2M XMA Memory Adapter or Expanded Memory Adapter/A errors
86xx | PS/2 Pointing Device (Mouse) errors
89xx | Musical Instrument Digital Interface (MIDI) Adapter errors
91xx | IBM 3363 Write-Once Read Multiple (WORM) Optical Drive/Adapter errors
096xxxx | SCSI Adapter with Cache (32-bit) errors
100xx | Multiprotocol Adapter/A errors
101xx | 300/1200bps Internal Modem/A
104xx | ESDI Fixed Disk or Adapter errors
107xx | 5 1/4-inch External Disk Drive or Adapter errors
112xxxx | SCSI Adapter (16-bit without Cache) errors
113xxxx | System Board SCSI Adapter (16-bit) errors
129xx | Model 70 Processor Board errors; Type 3 (25MHz) System Board
149xx | P70/P75 Plasma Display and Adapter errors
165xx | 6157 Streaming Tape Drive or Tape Attachment Adapter errors
166xx | Primary Token Ring Network Adapter errors
167xx | Alternate Token Ring Network Adapter errors
180xx | PS/2 Wizard Adapter errors
194xx | 80286 Memory Expansion Option Memory Module errors
208xxxx | Unknown SCSI Device errors
209xxxx | SCSI Removable Disk errors
210xxxx | SCSI Fixed Disk errors
211xxxx | SCSI Tape Drive errors
212xxxx | SCSI Printer errors
213xxxx | SCSI Processor errors
214xxxx | SCSI Write-Once Read Multiple (WORM) Drive errors
215xxxx | SCSI CD-ROM Drive errors
216xxxx | SCSI Scanner errors
217xxxx | SCSI Optical Memory errors
218xxxx | SCSI Jukebox Changer errors
219xxxx | SCSI Communications errors

Tables 21.6 and 21.7 list error codes that were documented or encountered for several BIOS manufacturers. POST codes for older hardware can be found in the sixth edition, Appendix A, which is included on the CD-ROM that accompanies this book.

#### Table 21.6 Hewlett Packard 486/U POST Error Codes

Code | Description
00Ax, 00Bx, 00Cx, 00Dx | Adapter ROM (read-only memory) checksum error. Check configuration.
008x | Video ROM (read-only memory) checksum error. Check video ROM or adapter.
009x | Adapter ROM (read-only memory) checksum error in addresses between C8000h and CFFFFh. Check configuration and adapter.
0111x, 0120 | CMOS real-time clock is not updating. Check battery and system board.
0130 | CMOS real-time clock has invalid time and/or date. Reset date and time.
0240, 0241 | CMOS memory information is incorrect. Check the clear configuration switch on the system board; it should be OFF.
0250 | CMOS configuration does not match installed devices.
0280, 0282 | CMOS configuration information has been corrupted.
02C0 | EEPROM memory has not been set or was corrupted.
0301, 0302, 0303, 0305, 0306, 0307, 0311, 0312, 03E0, 03E1, 03E2, 03E3, 03E4, 03E5, 03EE, 03EC | System board keyboard/mouse controller did not respond.
0342, 0343, 0344, 0345, | System board keyboard/mouse controller self-test failure. Check
0346, 0350, 0351 | keyboard controller.
0352, 0353 | Keyboard not responding to POST tests. Check cable and keyboard controller.
0354 | Keyboard self-test failure. Check keyboard.
03E6, 03E7, 03E8, 03E9 | Mouse interface test failure. Check mouse, cable, or keyboard/mouse controller.
03EA, 03EB | Keyboard/mouse reset failure. Check mouse and cable.
0401 | Gate A20 failure. Check keyboard/mouse controller (8042) on system board or the system board itself.
0503, 0505 | Serial port error or conflict. Check system board or adapters.
0543, 0545 | Parallel port or configuration failure. Check configuration, system board, or adapters.
06xx | Keyboard stuck key failure; xx = Scan code (hex) of the key.
1100, 1101 | System timer failure. Check system board.
1300 | Floppy controller conflict. Check configuration.
13x1 | Adapter communications error; x = slot containing adapter (for example, 1351 = slot 5).
13x2 | CMOS indicates a slot is empty, but a board is installed; x = slot.
13x3 | CMOS indicates a slot contains a board with no readable identification, but a board with a readable identification is present; x = slot.
13x4 | CMOS configuration information does not match the board in slot x, where x = slot.
13x5 | CMOS configuration information is incomplete.
2002 | SIMM not detected. Check SIMMs and system board.
2003, 2005, 2007 | Incorrect SIMM configuration; for example, when you have 2M and 8M memory modules installed at the same time, the 8M modules must be in the first sockets.
21xx, 22xx | DMA (Direct Memory Access) controller is not functioning correctly. Check system board.
4F0x | SIMM error; x = SIMM socket (For example,. 4F02 = socket 2).
61xx | Memory addressing error. Check installed SIMMs.
62F0 | Memory parity error. Check SIMMs or system board.
62F1 | Memory controller error. Check system board.
6300 | Adapter RAM error. Check installed adapters and memory.
6500 | System board ROM BIOS shadowing error. Check system board and setup for conflicts.
6510 | Video ROM shadowing error. Check system board or video adapter.
6520 | Adapter ROM shadowing error. Check system board adapters and memory.
65C0, 65D0, 65E0 | Reserved memory for shadowing failed tests. Segment indicated by third digit (For example, 65D0 = segment D000h).
70xx, 71xx, 7400, 7500 | Interrupt controller failure. Check system board and adapters.
8003, 8103 | Hard disk configuration (number of sectors) is not correct.
8004, 8104 | CMOS hard disk parameters are not correct, where 8004 = drive C, and 8104 = drive D.
8005, 8105 | CMOS hard disk parameters not supported, where 8005 = drive C, and 8105 = drive D.
8x06 | BIOS shadow RAM on your system board must be functioning if you have either a hard disk drive type 33 or type 34 installed.
8007, 8107 | The number of hard disk drive cylinders specified for your type 33 or type 34 hard disk drive is not correct, where 8007 = drive C, and 8107 = drive D.
800D, 8010, 800E, 800F | Hard drive controller not responding. Check controller or cables.
8011 | Hard disk test failure.
8012, 8013 | Hard disk controller test failure.
8020, 8120 | Hard drive not ready, where 8020 = drive C, and 8120 = drive D.
8021, 8121 | Unable to communicate with hard disk controller, where 8021 = drive C and 8121 = drive D is at fault.
8028 | Hard disk controller is configured for drive splitting, but splitting is not supported or is not functioning. Check configuration.
8030, 8130 | Identify drive failure, where 8030 = drive C, and 8130 = drive D is at fault. Check the EISA Configuration Manager Utility.
8038, 8138, 803A, 813A, 803B, 813B 803C, 813C | Hard disk (Recalibrate) error, where 8039, 803A, or 803C = hard disk or controller for drive C, and 8139, 8013A, or 813C = drive D or its controller is at fault.
8040, 8140, 8041, 8141, 8042, 8142, 8043, 8143, 8044, 8144, 8045, 8145 | Hard disk (Read Verify) command failure, where 804x = hard disk drive or controller for C, and 814x = hard drive or controller for D.
8048, 8148, 804A, 814A | Hard disk (Drive Identify) command failure, where 804x = drive C, and 814x = drive D.
8049, 8149, 804B, 814B | Hard disk (Set Multiple Mode) command failure, where 804x = drive C, and 814x = drive D.
8400 | No boot sector (or corrupted boot sector) on hard disk.
900A, 910A, 920A | CMOS floppy configuration does not match actual drives installed, where 900A = drive A, 910A = drive B, and 920A = a third floppy drive.
9000, 9100, 9200, 9001, | Floppy controller communication error, where 90xx = drive A, 91xx
9101, 9201 | = drive B, and 92xx = a third floppy drive.
9002, 9102, 9202 | Floppy drive (Seek) error, where 90xx = drive A, 91xx = drive B, and 9202 = a third floppy drive.
9003, 9103, 9203 | Floppy drive (Recalibrate) error, where 90xx = drive A, 9103 = drive B, and 9203 = a third floppy drive.
9005, 9105, 9205 | Floppy drive (Reset) error, where 9005 = drive A, 9105 = drive as B, and 9205 = a third floppy drive.
9008, 9108, 9208 | Floppy drive command error, where 9008 = drive A, 9108 = drive B, and 9208 = a third floppy drive.
9009, 9109, 9209 | Floppy drive track zero error, where 9009 = drive A, 9109 = drive B, and 9209 = a third floppy drive.
A001, A002, A003, A004, A005, A006, A007, A008, A009, A00A, A00B, A00C, A00D, A00E | Math coprocessor failure.
B300 | CPU Level 2 cache failure.
Exxx | Memory board failure (non-HP).

#### Table 21.7 IBM POST and Diagnostics Error-Code List

Code | Description
1xx | System Board Errors
101 | System board interrupt failure (unexpected interrupt).
102 | System board timer failure.
102 | PS/2; real-time clock (RTC)/64-byte CMOS RAM test failure.
103 | System board timer interrupt failure.
103 | PS/2; 2K CMOS RAM extension test failure.
104 | System board protected mode failure.
105 | System board 8042 keyboard controller command failure.
106 | System board converting logic test failure.
107 | System board Non-Maskable Interrupt (NMI) test failure; hot NMI.
108 | System board timer bus test failure.
109 | System board memory select error; low MB chip select test failed.
110 | PS/2 system board parity check error (PARITY CHECK 1).
111 | PS/2 I/O channel (bus) parity check error (PARITY CHECK 2).
112 | PS/2 Micro Channel Arbitration error; watchdog time-out (NMI error).
113 | PS/2 Micro Channel Arbitration error; DMA arbitration time-out (NMI error).
114 | PS/2 external ROM checksum error.
115 | Cache parity error, ROM checksum error, or DMA error.
116 | System board port read/write failure.
118 | System board parity or L2-cache error during previous power-on.
119 | "E" Step level 82077 (floppy controller) and 2.88M drive installed (not supported).
120 | Microprocessor self-test error.
121 | 256K ROM checksum error (second 128K bank).
121 | Unexpected hardware interrupts occurred.
131 | PC system board cassette port wrap test failure.
131 | Direct memory access (DMA) compatibility registers error.
132 | Direct memory access (DMA) extended registers error.
133 | Direct memory access (DMA) verify logic error.
134 | Direct memory access (DMA) arbitration logic error.
151 | Battery or CMOS RAM failure.
152 | Real-time clock or CMOS RAM failure.
160 | PS/2 system board ID not recognized.
161 | CMOS configuration empty (dead battery).
162 | CMOS checksum error or adapter ID mismatch.
163 | CMOS error; date and time not set (clock not updating).
164 | Memory size error; CMOS setting does not match memory.
165 | PS/2 Micro Channel adapter ID and CMOS mismatch.
166 | PS/2 Micro Channel adapter time-out error (card busy).
167 | PS/2 CMOS clock not updating.
168 | CMOS configuration error (math coprocessor).
169 | System board and processor card configuration mismatch. Run Setup.
170 | ASCII setup conflict error.
170 | PC Convertible; LCD not in use when suspended.
171 | Rolling-bit-test failure on CMOS shutdown address byte.
171 | PC Convertible; base 128K checksum failure.
172 | Rolling-bit-test failure on NVRAM diagnostic byte.
172 | PC Convertible; disk active when suspended.
173 | Bad CMOS/NVRAM checksum.
173 | PC Convertible; real-time clock RAM verification error.
174 | Bad configuration.
174 | PC Convertible; LCD configuration changed.
175 | Bad EEPROM CRC #1.
175 | PC Convertible; LCD alternate mode failed.
176 | Tamper evident.
177 | Bad PAP (Privileged-Access Password) CRC.
177 | Bad EEPROM.
178 | Bad EEPROM.
179 | NVRAM error log full.
180x | Sub Address data error, where x equals the slot number that caused the error.
181 | Unsupported configurations.
182 | Privileged-access switch (JMP2) is not in the write-enable position.
183 | PAP is needed to boot from the system programs.
183 | Privileged-access password required.
184 | Bad power-on password checksum--erase it.
184 | Bad power-on password.
185 | Bad startup sequence.
186 | Password-protection hardware error.
187 | Serial number error.
188 | Bad EEPROM checksum CRC #2.
189 | Excessive incorrect password attempts.
191 | 82385 cache controller test failure.
194 | System board memory error.
199 | User indicated INSTALLED DEVICES list is not correct.
2xx | Memory (RAM) Errors
20x | Memory error.
201 | Memory test failure; error location may be displayed.
202 | Memory address error; lines 00-15.
203 | Memory address error; lines 16-23 (ISA) or 16-31 (MCA).
204 | Memory remapped due to error (run diagnostics again).
205 | Base 128K memory error; memory remapped.
207 | ROM failure.
210 | System board memory parity error.
211 | PS/2 memory; base 64K on system board failed.
212 | Watchdog time-out error (reported by NMI interrupt handler).
213 | DMA bus arbitration time-out (reported by NMI interrupt handler).
215 | PS/2 memory; base 64K on daughter/SIP 2 failed.
216 | PS/2 memory; base 64K on daughter/SIP 1 failed.
221 | PS/2 memory; ROM to RAM copy failed (ROM shadowing).
225 | PS/2 memory; wrong-speed memory on system board, unsupported SIMM.
230 | Overlapping adapter and planar memory (Family 1).
231 | Non-contiguous adapter memory installed (Family 1).
231 | 2/4-16M Enhanced 386 memory adapter; memory module 1 failed.
235 | Stuck data line on memory module, microprocessor, or system board.
241 | 2/4-16M Enhanced 386 memory adapter; memory module 2 failed.
251 | 2/4-16M Enhanced 386 memory adapter; memory module 3 failed.
3xx | Keyboard Errors
301 | Keyboard reset or stuck key failure (SS 301, SS = scan code in hex).
302 | System unit keylock is locked.
303 | Keyboard-to-system board interface error; keyboard controller failure.
304 | Keyboard or system board error; keyboard clock high.
305 | Keyboard +5v dc error; PS/2 keyboard fuse (on system board) error.
306 | Unsupported keyboard attached.
341 | Keyboard error.
342 | Keyboard cable error.
343 | Keyboard LED card or cable failure.
365 | Keyboard LED card or cable failure.
366 | Keyboard interface cable failure.
367 | Keyboard LED card or cable failure.
4xx | Monochrome Display Adapter (MDA) Errors or PS/2 System Board Parallel Port Errors
401 | Monochrome memory, horizontal sync frequency, or video test failure.
401 | PS/2 system board parallel port failure.
408 | User indicated display attributes failure.
416 | User indicated character set failure.
424 | User indicated 80525 mode failure.
432 | Parallel port test failure; Monochrome Display Adapter.
5xx | Color Graphics Adapter (CGA) Errors
*501 | CRT error.
501 | CGA memory, horizontal sync frequency, or video test failure.
503 | CGA adapter controller failed.
508 | User indicated display attribute failure.
516 | User indicated character set failure.
524 | User indicated 80x25 mode failure.
532 | User indicated 40x25 mode failure.
540 | User indicated 320x200 graphics mode failure.
548 | User indicated 640x200 graphics mode failure.
556 | User indicated light-pen test failed.
564 | User indicated paging test failure.
6xx | Floppy Drive/Controller Errors
601 | Floppy drive/controller Power-On Self Test failure; disk drive or controller error.
602 | Disk boot sector is not valid.
603 | Disk size error.
604 | Non-media sense.
605 | Disk drive locked.
606 | Disk verify test failure.
607 | Write protect error.
608 | Drive command error.
610 | Disk initialization failure; track 0 bad.
611 | Drive time-out error.
612 | Controller chip (NEC) error.
613 | Direct memory access (DMA) error.
614 | Direct memory access (DMA) boundary overrun error.
615 | Drive index timing error.
616 | Drive speed error.
621 | Drive seek error.
622 | Drive cyclic redundancy check (CRC) error.
623 | Sector not found error.
624 | Address mark error.
625 | Controller chip (NEC) seek error.
626 | Disk data compare error.
627 | Disk change error.
628 | Disk removed.
630 | Index stuck high; drive A.
631 | Index stuck low; drive A.
632 | Track 0 stuck off; drive A.
633 | Track 0 stuck on; drive A.
640 | Index stuck high; drive B.
641 | Index stuck low; drive B.
642 | Track 0 stuck off; drive B.
643 | Track 0 stuck on; drive B.
645 | No index pulse.
646 | Drive track 0 detection failed.
647 | No transitions on read data line.
648 | Format test failed.
649 | Incorrect media type in drive.
650 | Drive speed error.
651 | Format failure.
652 | Verify failure.
653 | Read failure.
654 | Write failure.
655 | Controller error.
656 | Drive failure.
657 | Write protect stuck protected.
658 | Changeline stuck changed.
659 | Write protect stuck unprotected.
660 | Changeline stuck unchanged.
7xx | Math Coprocessor Errors
701 | Math coprocessor presence/initialization error.
702 | Exception errors test failure.
703 | Rounding test failure.
704 | Arithmetic test 1 failure.
705 | Arithmetic test 2 failure.
706 | Arithmetic test 3 (80387 only) failure.
707 | Combination test failure.
708 | Integer load/store test failure.
709 | Equivalent expressions errors.
710 | Exception (interrupt) errors.
711 | Save state (FSAVE) errors.
712 | Protected mode test failure.
713 | Special test (voltage/temperature sensitivity) failure.
9xx | Parallel Printer Adapter Errors
901 | Printer adapter data register latch error.
902 | Printer adapter control register latch error.
903 | Printer adapter register address decode error.
904 | Printer adapter address decode error.
910 | Status line(s) wrap connector error.
911 | Status line bit 8 wrap error.
912 | Status line bit 7 wrap error.
913 | Status line bit 6 wrap error.
914 | Status line bit 5 wrap error.
915 | Status line bit 4 wrap error.
916 | Printer adapter interrupt wrap error.
917 | Unexpected printer adapter interrupt.
92x | Feature register error.
10xx | Alternate Parallel Printer Adapter Errors
1001 | Printer adapter data register latch error.
1002 | Printer adapter control register latch error.
1003 | Printer adapter register address decode error.
1004 | Printer adapter address decode error.
1010 | Status line(s) wrap connector error.
1011 | Status line bit 8 wrap error.
1012 | Status line bit 7 wrap error.
1013 | Status line bit 6 wrap error.
1014 | Status line bit 5 wrap error.
1015 | Status line bit 4 wrap error.
1016 | Printer adapter interrupt wrap error.
1017 | Unexpected printer adapter interrupt.
102x | Feature register error.
11xx | Primary Async Communications (Serial COM1:) Errors
1101 | 16450/16550 chip error; serial port A error.
1102 | Card selected feedback error.
1102 | PC Convertible internal modem test failed.
1103 | Port 102h register test failure.
1103 | PC Convertible internal modem dial tone test 1 failed.
1104 | PC Convertible internal modem dial tone test 2 failed.
1106 | Serial option cannot be put to sleep.
1107 | Cable error.
1108 | Interrupt request (IRQ) 3 error.
1109 | Interrupt request (IRQ) 4 error.
1110 | 16450/16550 chip register failure.
1111 | Internal wrap test of 16450/16550 chip modem control line failure.
1112 | External wrap test of 16450/16550 chip modem control line failure.
1113 | 16450/16550 chip transmit error.
1114 | 16450/16550 chip receive error.
1115 | 16450/16550 chip receive error; data not equal to transmit data.
1116 | 16450/16550 chip interrupt function error.
1117 | 16450/16550 chip baud rate test failure.
1118 | 16450/16550 chip receive external data wrap test failure.
1119 | 16550 chip first-in first-out (FIFO) buffer failure.
1120 | Interrupt enable register error; all bits cannot be set.
1121 | Interrupt enable register error; all bits cannot be reset.
1122 | Interrupt pending; stuck on.
1123 | Interrupt ID register; stuck on.
1124 | Modem control register error; all bits cannot be set.
1125 | Modem control register error; all bits cannot be reset.
1126 | Modem status register error; all bits cannot be set.
1127 | Modem status register error; all bits cannot be reset.
1128 | Interrupt ID error.
1129 | Cannot force overrun error.
1130 | No modem status interrupt.
1131 | Invalid interrupt pending.
1132 | No data ready.
1133 | No data available interrupt.
1134 | No transmit holding interrupt.
1135 | No interrupts.
1136 | No received sine status interrupt.
1137 | No received data available.
1138 | Transmit holding register not empty.
1139 | No modem status interrupt.
1140 | Transmit holding register not empty.
1141 | No interrupts.
1142 | No interrupt 4.
1143 | No interrupt 3.
1144 | No data transferred.
1145 | Maximum baud rate error.
1146 | Minimum baud rate error.
1148 | Time-out error.
1149 | Invalid data returned.
1150 | Modem status register error.
1151 | No data set ready and delta data set ready.
1152 | No data set ready.
1153 | No delta data set ready.
1154 | Modem status register not clear.
1155 | No clear to send and delta clear to send.
1156 | No clear to send.
1157 | No delta clear to send.
12xx | Alternate Async Communications (Serial COM2:, COM3:, and COM4:) Errors
1201 | 16450/16550 chip error.
1202 | Card selected feedback error.
1203 | Port 102h register test failure.
1206 | Serial option cannot be put to sleep.
1207 | Cable error.
1208 | Interrupt request (IRQ) 3 error.
1209 | Interrupt request (IRQ) 4 error.
1210 | 16450/16550 chip register failure.
1211 | Internal wrap test of 16450/16550 chip modem control line failure.
1212 | External wrap test of 16450/16550 chip modem control line failure.
1213 | 16450/16550 chip transmit error.
1214 | 16450/16550 chip receive error.
1215 | 16450/16550 chip receive error; data not equal to transmit data.
1216 | 16450/16550 chip interrupt function error.
1217 | 16450/16550 chip baud rate test failure.
1218 | 16450/16550 chip receive external data wrap test failure.
1219 | 16550 chip first-in first-out (FIFO) buffer failure.
1220 | Interrupt enable register error; all bits cannot be set.
1221 | Interrupt enable register error; all bits cannot be reset.
1222 | Interrupt pending; stuck on.
1223 | Interrupt ID register; stuck on.
1224 | Modem control register error; all bits cannot be set.
1225 | Modem control register error; all bits cannot be reset.
1226 | Modem status register error; all bits cannot be set.
1227 | Modem Status Register error; all bits cannot be reset.
1228 | Interrupt ID error.
1229 | Cannot force overrun error.
1230 | No modem status interrupt.
1231 | Invalid interrupt pending.
1232 | No data ready.
1233 | No data available interrupt.
1234 | No transmit holding interrupt.
1235 | No interrupts.
1236 | No received sine status interrupt.
1237 | No receive data available.
1238 | Transmit holding register not empty.
1239 | No modem status interrupt.
1240 | Transmit holding register not empty.
1241 | No interrupts.
1242 | No interrupt 4.
1243 | No interrupt 3.
1244 | No data transferred.
1245 | Maximum baud rate error.
1246 | Minimum baud rate error.
1248 | Time-out error.
1249 | Invalid data returned.
1250 | Modem status register error.
1251 | No data set ready and delta data set ready.
1252 | No data set ready.
1253 | No delta data set ready.
1254 | Modem status register not clear.
1255 | No clear to send and delta clear to send.
1256 | No clear to send.
1257 | No delta clear to send.
13xx | Game Control Adapter Errors
1301 | Game control adapter test failure.
1302 | Joystick test failure.
17xx | ST-506/412 Fixed Disk and Controller Errors
1701 | Fixed disk general POST error.
1702 | Drive/controller time-out error.
1703 | Drive seek error.
1704 | Controller failed.
1705 | Drive sector not found error.
1706 | Write fault error.
1707 | Drive track 0 error.
1708 | Head select error.
1709 | Error-correction code (ECC) error.
1710 | Sector buffer overrun.
1711 | Bad address mark.
1712 | Internal controller diagnostics failure.
1713 | Data compare error.
1714 | Drive not ready.
1715 | Track 0 indicator failure.
1716 | Diagnostics cylinder errors.
1717 | Surface read errors.
1718 | Hard drive type error.
1720 | Bad diagnostics cylinder.
1726 | Data compare error.
1730 | Controller error.
1731 | Controller error.
1732 | Controller error.
1733 | BIOS undefined error return.
1735 | Bad command error.
1736 | Data corrected error.
1737 | Bad track error.
1738 | Bad sector error.
1739 | Bad initialization error.
1740 | Bad sense error.
1750 | Drive verify failure.
1751 | Drive read failure.
1752 | Drive write failure.
1753 | Drive random read test failure.
1754 | Drive seek test failure.
1755 | Controller failure.
1756 | Controller error-correction code (ECC) test failure.
1757 | Controller head-select failure.
1780 | Seek failure; drive 0.
1781 | Seek failure; drive 1.
1782 | Controller test failure.
1790 | Diagnostic cylinder read error; drive 0.
1791 | Diagnostic cylinder read error; drive 1.
24xx | Enhanced Graphics Adapter (EGA) or Video Graphics Array (VGA) Errors
2401 | Video adapter test failure.
2402 | Video display error.
2408 | User indicated display attribute test failed.
2409 | Video display error.
2410 | Video adapter error; video port error.
2416 | User indicated character set test failed.
2424 | User indicated 80x25 mode failure.
2432 | User indicated 40x25 mode failure.
2440 | User indicated 320x200 graphics mode failure.
2448 | User indicated 640x200 graphics mode failure.
2456 | User indicated light-pen test failure.
2464 | User indicated paging test failure.
25xx | Alternate Enhanced Graphics Adapter (EGA) Errors
26xx | XT or AT/370 370-M (Memory) and 370-P (Processor) Adapter Errors
27xx | XT or AT/370 3277-EM (Emulation) Adapter Errors
28xx | 3278/79 Emulation Adapter or 3270 Connection Adapter Errors
29xx | Color/Graphics Printer Errors
30xx | Primary PC Network Adapter Errors
3001 | Processor test failure.
3002 | ROM checksum test failure.
3003 | Unit ID PROM test failure.
3004 | RAM test failure.
3005 | Host interface controller test failure.
3006 | [p/m]12v test failure.
3007 | Digital loopback test failure.
3008 | Host detected host interface controller failure.
3009 | Sync failure and no Go bit.
3010 | Host interface controller test OK and no Go bit.
3011 | Go bit and no command 41.
3012 | Card not present.
3013 | Digital failure; fall through.
3015 | Analog failure.
3041 | Hot carrier; not this card.
3042 | Hot carrier; this card.
31xx | Secondary PC Network Adapter Errors
3101 | Processor test failure.
3102 | ROM checksum test failure.
3103 | Unit ID PROM test failure.
3104 | RAM test failure.
3105 | Host interface controller test failure.
3106 | [p/m]12v test failure.
3107 | Digital loopback test failure.
3108 | Host detected host interface controller failure.
3109 | Sync failure and no Go bit.
3110 | Host interface controller test OK and no Go bit.
3111 | Go bit and no command 41.
3112 | Card not present.
3113 | Digital failure; fall through.
3115 | Analog failure.
3141 | Hot carrier; not this card.
3142 | Hot carrier; this card.
32xx | 3270 PC or AT Display and Programmed Symbols Adapter Errors
33xx | Compact Printer Errors
35xx | Enhanced Display Station Emulation Adapter (EDSEA) Errors
36xx | General-Purpose Interface Bus (GPIB) Adapter Errors
37xx | System Board SCSI Controller Error
38xx | Data Acquisition Adapter Errors
39xx | Professional Graphics Adapter (PGA) Errors
44xx | 5278 Display Attachment Unit and 5279 Display Errors
45xx | IEEE Interface Adapter (IEEE-488) Errors
46xx | A Real-Time Interface Coprocessor (ARTIC) Multiport/2 Adapter Errors
48xx | Internal Modem Errors
49xx | Alternate Internal Modem Errors
50xx | PC Convertible LCD Errors
51xx | PC Convertible Portable Printer Errors
56xx | Financial Communication System Errors
70xx | Phoenix BIOS/Chipset Unique Error Codes
7000 | Chipset CMOS failure.
7001 | Chipset shadow RAM failure.
7002 | Chipset CMOS configuration error.
71xx | Voice Communications Adapter (VCA) Errors
73xx | 3 1/2-Inch External Disk Drive Errors
74xx | IBM PS/2 Display Adapter (VGA Card) Errors
74xx | 8514/A Display Adapter Errors
76xx | 4216 PagePrinter Adapter Errors
84xx | PS/2 Speech Adapter Errors
85xx | 2MB XMA Memory Adapter or XMA Adapter/A Errors
86xx | PS/2 Pointing Device (Mouse) Errors
89xx | Musical Instrument Digital Interface (MIDI) Adapter Errors
91xx | IBM 3363 Write-Once Read Multiple (WORM) Optical Drive/Adapter Errors
96xx | SCSI Adapter with Cache (32-Bit) Errors
100xx | Multiprotocol Adapter/A Errors
101xx | 300/1200bps Internal Modem/A Errors
104xx | ESDI or MCA IDE Fixed Disk or Adapter Errors
107xx | 5 1/4-Inch External Disk Drive or Adapter Errors
112xx | SCSI Adapter (16-bit without Cache) Errors
113xx | System Board SCSI Adapter (16-Bit) Errors
129xx | Processor Complex (CPU Board) Errors
149xx | P70/P75 Plasma Display and Adapter Errors
152xx | XGA Display Adapter/A Errors
164xx | 120M Internal Tape Drive Errors
165xx | 6157 Streaming Tape Drive or Tape Attachment Adapter Errors
16520 | Streaming tape drive failure.
16540 | Tape attachment adapter failure.
166xx | Primary Token Ring Network Adapter Errors
167xx | Alternate Token Ring Network Adapter Errors
180xx | PS/2 Wizard Adapter Errors
185xx | DBCS Japanese Display Adapter/A Errors
194xx | 80286 Memory-Expansion Option Memory-Module Errors
200xx | Image Adapter/A Errors
208xx | Unknown SCSI Device Errors
209xx | SCSI Removable Disk Errors
210xx | SCSI Fixed Disk Errors
210PLSC | "PLSC" codes indicate errors
P = SCSI ID number (Physical Unit Number, or PUN) |
L = Logical unit number (LUN, usually 0) |
S = Host Adapter slot number |
C = SCSI Drive capacity: |
A = 60M |
B = 80M |
C = 120M |
D = 160M |
E = 320M |
F = 400M |
H = 1,024M (1G) |
I = 104M |
J = 212M |
U = Undetermined or Non-IBM OEM Drive |
211xx | SCSI Tape Drive Errors
212xx | SCSI Printer Errors
213xx | SCSI Processor Errors
214xx | SCSI Write-Once Read Multiple (WORM) Drive Errors
215xx | SCSI CD-ROM Drive Errors
216xx | SCSI Scanner Errors
217xx | SCSI Magneto Optical Drive Errors
218xx | SCSI Jukebox Changer Errors
219xx | SCSI Communications Errors
243xxxx | XGA-2 Adapter/A Errors
I998xxxx | Dynamic Configuration Select (DCS) Information Codes
I99900xx | Initial Microcode Load (IML) Error
I99903xx | No Bootable Device, Initial Program Load (IPL) Errors
I99904xx | IML-to-System Mismatch
I99906xx | IML Errors

## General-Purpose Diagnostics Programs

A large number of third-party diagnostics programs are available for PC-compatible systems. Specific programs are available also to test memory, floppy drives, hard disks, video boards, and most other areas of the system. Although some of these utility packages should be considered essential in any tool kit, many fall short of the level needed by professional-level troubleshooters. Many products, geared more toward end users, lack the accuracy, features, and capabilities needed by technically proficient people who are serious about troubleshooting. Most of the better diagnostics on the market offer several advantages over the IBM diagnostics. They usually are better at determining where a problem lies within a system, especially in IBM-compatible systems. Serial- and parallel-port loopback connectors, or wrap plugs, are often included in these packages, or are available for a separate charge. The plugs are required to properly diagnose and test serial and parallel ports. (IBM always charges extra for these plugs.)

Many of these programs can be run in a batch mode, which enables a series of tests to be run from the command line without operator intervention. You then can set up automated test suites, which can be especially useful in burning in a system or executing the same tests on many systems.

These programs test all types of memory, including conventional (base) memory, extended memory, and expanded memory. Failures can usually be identified down to the individual chip or SIMM (bank and bit) level.

> TIP: Before trying a commercial diagnostic program to solve your problem, look in your operating system. Most operating systems today provide at least some of the diagnostic functions that diagnostic programs do. You may be able to save some time and money. Operating system-based diagnostics are covered in Chapter 22, "Operating Systems Software and Troubleshooting."

Unfortunately, there is no clear leader in the area of diagnostic software. Each program presented here has unique advantages. As a result, no program is universally better than another. When deciding which diagnostic programs, if any, to include in your arsenal, look for the features that you need.

### AMIDiag

AMI (American Megatrends, Inc.) makes the most popular PC ROM BIOS software in use today. The AMI BIOS can be found on the majority of newer IBM compatible systems that are currently being sold. If you have seen the AMI BIOS, you know that most versions have a built-in diagnostic program. Few people know that AMI now markets an enhanced disk-based version of the same diagnostics that are built into the AMI ROM.

AMIDiag, as the program is called, has numerous features and enhancements not found in the simpler ROM version. AMIDiag is a comprehensive, general purpose diagnostic that is designed for any IBM compatible system, not just those with an AMI ROM BIOS.

AMI's Web site has a demo version of AMIDiag available for downloading:

http://www.megatrends.com

### Checkit Pro

Touchstone Software Corporation's Checkit products offer an excellent suite of testing capabilities, including tests of the system CPU; conventional, extended, and expanded memory; hard and floppy drives; and video card and monitor (including VESA-Standard cards and monitors, mouse, and keyboard). Several versions of the Checkit product are available--Checkit Pro Deluxe is the company's most complete hardware diagnostic program. Checkit Pro Analyst for Windows performs Windows-based diagnostics. Checkit Plus, which is included by some system manufacturers with their systems, is less complete.

Checkit Pro Deluxe provides limited benchmarking capabilities but gives detailed information about your system hardware such as the following: total installed memory, hard drive type and size, current memory allocation (including upper memory usage), IRQ availability and usage, modem/fax modem speed, and a variety of other tests important to someone troubleshooting a PC. Checkit Pro Deluxe includes a text-editing module that opens automatically to CONFIG.SYS and AUTOEXEC.BAT. If you use Windows, Checkit Pro's Windows option makes it easy to edit your Windows SYSTEM.INI and WIN.INI files.

Some of the testing performed by Checkit Pro is uncommon for diagnostic utility packages (for example, its capability to test modem/fax settings). Still, Checkit Pro lacks important features such as an easy-to-use listing of available DMA channels, which is crucial if you are trying to install a sound card and other hardware devices.

For additional information on Checkit, be sure to check their Web site:

http://www.checkit.com/products/index.htm

### Microscope

Microscope by Micro 2000 is a full-featured, general purpose diagnostic program for IBM compatible systems. It has many features and capabilities that can be very helpful in troubleshooting or diagnosing hardware problems.

The Microscope package is one of only a few diagnostics packages that are truly PS/2 aware. Microscope not only helps you troubleshoot PS/2 systems, but also does some things that even IBM advanced diagnostics cannot do. For example, it can format industry-standard ESDI hard disk drives attached to the IBM PS/2 ESDI controller. When you attach an ESDI drive to the IBM ESDI controller, the BIOS on the controller queries the drive for its capacity and defect map information. IBM apparently chose a proprietary format for this information on its drives; if the controller cannot read the information, you cannot set up the drive nor format it by using the PS/2 Reference Disk.

Although IBM used an ESDI controller in its PS/2 system, you could not get just any ESDI drive to work on that system. Some drive manufacturers produced special PS/2 versions of their drives that had this information on them. Another way around the problem was to use an aftermarket ESDI controller in place of the IBM controller so that you could use the IBM ESDI drive as well as any other industry-standard ESDI drive. With this method, however, you could not use the Reference Disk format program anymore because it works only with IBM's controller. Microscope solves many of these problems because it can format an industry-standard ESDI drive attached to the IBM ESDI controller and save you from having to purchase an aftermarket controller or a special drive when you add drives to these systems.

Microscope also has a hardware interrupt and I/O port address check feature that is more accurate than the same feature in most other software. It enables you to accurately identify the interrupt or I/O port address that a certain adapter or hardware device in your system is using--a valuable capability in solving conflicts between adapters. Some user-level diagnostics programs have this feature, but the information they report can be grossly inaccurate, and they often miss items installed in the system. Microscope goes around DOS and the BIOS. Because the program has its own operating system and its tests bypass the ROM BIOS when necessary, it can eliminate the masking that occurs with these elements in the way. For this reason, the program also is useful for technicians who support PCs that run under non-DOS environments, such as UNIX or on Novell file servers. For convenience, you can install Microscope on a hard disk and run it under regular DOS.

Finally, Micro 2000 offers excellent telephone technical support. Its operators do much more than explain how to operate the software--they help you with real troubleshooting problems. This information is augmented by good documentation and online help built in to the software so that, in many cases, you don't have to refer to the manual.

You can find more on Microscope at

http://sacb.co.za/dion/micro2.htm

### Norton Utilities Diagnostics

When you consider that Norton Diagnostics (NDIAGS) comes with the Norton Utilities, and that Norton Utilities is already an essential collection of system data safeguarding, troubleshooting, testing, and repairing utilities, NDIAGS probably is one of the best values in diagnostic programs.

If you already have a version of Norton Utilities earlier than 8.0, get an upgrade. They also have a version that is designed for Windows 95. If you don't already have Norton Utilities, you'll want to strongly consider this package, not only for NDIAGS, but also for enhancements to other utilities such as Speedisk, Disk Doctor, and Calibrate. These three hard drive utilities basically represent the state of the art in hard drive diagnostics and software-level repair. SYSINFO still handles benchmarking for the Norton Utilities, and it does as good a job as any other diagnostic package on the market.

NDIAGS adds diagnostic capabilities that previously were not provided by the Norton Utilities, including comprehensive information about the overall hardware configuration of your system--the CPU, system BIOS, math coprocessor, video adapter, keyboard and mouse type, hard and floppy drive types, amount of installed memory (including extended and expanded), bus type (ISA, EISA, or MCA), and the number of serial and parallel ports. Unlike some other programs, loopback plugs do not come in the box for NDIAGS, but a coupon is included that enables you to get loopback plugs free. Note that this program uses wrap plugs that are wired slightly different than what has been commonly used by others. The different wiring allows you to run some additional tests. Fortunately, the documentation includes a diagram for these plugs, allowing you to make your own if you desire.

NDIAGS thoroughly tests the major system components and enables you to check minor details such as the NumLock, CapsLock, and ScrollLock LEDs on your keyboard. NDIAGS also provides an on-screen grid you can use to center the image on your monitor and test for various kinds of distortion that may indicate a faulty monitor. The Norton Utilities 8.0, as mentioned previously, is available for registered users of a previous version and can be purchased for $100 or less.

For information about all the Symantec utilities, see:

http://www.symantec.com/lit/util/doswinut/doswinut.html

### PC Technician

PC Technician by Windsor Technologies is one of the longest running PC diagnostics products on the market. As such, it has been highly refined and continuously updated to reflect the changing PC market.

PC Technician is a full-featured comprehensive hardware diagnostic and troubleshooting tool, and tests all major areas of a system. Like several of the other more capable programs, PC Technician has its own operating system that isolates it from problems caused by software conflicts. The program is written in assembly language and has direct access to the hardware in the system for testing. This program also includes all the wrap plugs needed for testing serial and parallel ports.

PC Technician has long been a favorite with field service companies, who equip their technicians with the product for troubleshooting. This program was designed for the professional service technician; however, it is easy for the amateur to use. As a bonus, PC Technician costs much less than many of the other programs in its class.

Windsor Technologies can be found on the Internet:

http://www.windsortech.com/

### QAPlus/FE

QAPlus/FE by Diagsoft is one of the most advanced and comprehensive sets of diagnostics you can buy for 386, 486, or Pentium-based computers, including PS/2s. Its testing is extremely thorough, and its menu-based interface makes it downright easy to use, even for someone who is not particularly well-versed in diagnosing problems with personal computers. QAPlus/FE also includes some of the most accurate system benchmarks you can get, which can be used to find out if that new system you are thinking of buying is really all that much faster than the one you already have. More importantly, QAPlus/FE comes on bootable 3 1/2- and 5 1/4-inch disks that (regardless of whether your operating system is DOS, OS/2, Windows NT, or UNIX) can be used to start your system when problems are so severe that your system hardware cannot even find the hard drive. You also can install QAPlus/FE on your hard drive if you are using DOS 3.2 or later.

Many of you may already have a less comprehensive version of this program called QAPlus, which is oriented toward end users. The basic QAPlus version is often included with systems sold by a number of different PC system vendors. Although the simple QAPlus program is okay, the full-blown QAPlus/FE version is much better for serious troubleshooting.

QAPlus/FE can be used to test your motherboard, system RAM (conventional, extended, and expanded), video adapter, hard drive, floppy drives, CD-ROM drive, mouse, keyboard, printer, and parallel and serial ports (the QAPlus/FE package includes loopback plugs for full testing of these ports). It also provides exhaustive information on your system configuration, including the hardware installed on your system, its CPU, and the total amount of RAM installed on your system. It provides full interrupt mapping-- crucial when installing new adapter boards and other hardware devices--and gives you a full picture of the device drivers and memory resident programs loaded in CONFIG.SYS and AUTOEXEC.BAT, as well as other information about DOS and system memory use.

QAPlus/FE also includes various other utilities that are more likely to appeal to the serious PC troubleshooter than to the average PC user. These special capabilities include a CMOS editor that can be used to change system date and time, as well as the hard drive type; installed memory size and other CMOS information; a COM port debugger; a hard drive test and low-level formatting utility; a floppy drive test utility; and a configuration file editor that can be used to edit AUTOEXEC.BAT, CONFIG.SYS, a remote system communication host program that enables service people with the full remote package to operate your computer via modem, as well as other text files.

Unlike some diagnostics programs, QAPlus/FE has a system burn-in capability, meaning it can be used to run your system non-stop under a full load of computations and hardware activity for the purpose of determining whether any system component is likely to fail in real life use. Many people use a burn-in utility when they receive a new system, and then again just before the warranty runs out. A true system burn-in usually lasts 48 to 72 hours, or even longer. The amount of time QAPlus/FE can burn-in a system is user-configurable by setting the number of times the selected tests are to be run.

Diagsoft can be found on the Internet:

http://www.diagsoft.com/

## Disk Diagnostics

All the general-purpose diagnostics programs can test both floppy and hard disk drives. However, because these programs are general-purpose in nature, the drive tests are not always as complete as one would like. For this reason, there are a number of specific programs designed expressly for performing diagnostics and servicing on disk drives. The following section discusses some of the best disk diagnostic and testing programs on the market and what they can do for you.

### Drive Probe

Many programs on the market evaluate the condition of floppy disk drives by using a disk created or formatted on the same drive. A program that uses this technique cannot make a proper evaluation of a disk drive's alignment. A specially-created disk produced by a tested and calibrated machine is required. This type of disk can be used as a reference standard by which to judge a drive. Accurite, the primary manufacturer of such reference standard floppy disks, helps specify floppy disk industry standards. Accurite produces the following three main types of reference standard disks used for testing drive function and alignment:

- Digital Diagnostic Disk (DDD)
- Analog Alignment Disk (AAD)
- High-Resolution Diagnostic Disk (HRD)

The HRD disk, introduced in 1989, represents a breakthrough in floppy disk drive testing and alignment. The disk is accurate to within 50µ-inches (millionths of an inch)-- accurate enough to use not only for precise testing of floppy drives, but also for aligning drives. With software that uses this HRD disk, you can align a floppy drive without having to use special tools or an oscilloscope. Other than the program and the HRD disk, you need only an IBM-compatible system to which to connect the drive. This product has lowered significantly the cost of aligning a drive and has eliminated much hassling with special test equipment.

The Accurite program Drive Probe is designed to work with the HRD disks (also from Accurite). Drive Probe is the most accurate and capable floppy disk testing program on the market, thanks to the use of HRD disks. Until other programs utilize the HRD disks for testing, Drive Probe is my software of choice for floppy disk testing. Because the Drive Probe software also acts as a disk exerciser, for use with AAD disks and an oscilloscope, you can move the heads to specific tracks for controlled testing.

### Disk Manager

Disk Manager by Ontrack stands today as the most comprehensive and capable hard disk test and format utility available. This program works with practically every hard disk and controller on the market, including the newer SCSI and IDE types.

> NOTE: Disk Manager unfortunately got the nickname "disk mangler" in its earlier versions because of bugs and system incompatibilities. While those problems have been long since removed, some technicians refuse to use it. In today's market of IDE and SCSI drives, the need for this software is limited anyway.

The Disk Manager program allows testing of the controller as well as the drive. Read- only testing may be performed as well as read/write tests. One of the best features is the comprehensive low-level formatting capability, which enables a user to set not only interleave but skew factors as well. The low-level format portion is also capable of truly formatting most IDE drives, a feature that few other programs have.

If you do any testing and formatting of hard disks, this program should be in your utility library. For more information about Disk Manager, see "Hard Disk Drives and Controllers" in Chapter 14.

Ontrack can be found on the Internet:

http://www.ontrack.com/ontrack/products.html

## Data Recovery Utilities

There are several programs designed for data recovery rather than just hardware troubleshooting and repair. These data recovery programs can troubleshoot and repair disk formatting structures (boot sectors, file allocation tables, directories) as well as files and file structures (database files, spreadsheet files, and so on).

The Norton Utilities by Symantec stands as perhaps the premier data recovery package on the market today. This package is very comprehensive and will automatically repair most types of disk problems.

What really makes this package stand out is the fantastic Disk Editor program. Currently, there is no other program as comprehensive or as capable of editing disks at the sector level. The Disk Editor included with the Norton Utilities can give the professional PC troubleshooter or repairperson the ability to work directly with any sector on the disk. Unfortunately, this does require extensive knowledge of sector formats and disk structures. The documentation with the package is excellent and can be very helpful if you are learning data recovery on your own.

> NOTE: Data recovery is a lucrative service that the more advanced technician can provide. People are willing to pay much more to get their data back than to simply replace a hard drive.

For more automatic recovery that anybody can perform, Norton Utilities has several other useful modules. Disk Doctor and Calibrate are two of the modules included with the Norton Utilities version 8.0 and later, including the Windows 95 version. Together, these two utilities provide exhaustive testing of the data structures and sectors of a hard drive. Disk Doctor works with both hard disks and floppies and tests the capability of the drive to work with the system in which it is installed, including the drive's boot sector, file allocation tables (FAT), file structure, and data areas. Calibrate, which is used for the most intensive testing of the data area of a drive, also tests the hard drive controller electronics.

Calibrate also can be used to perform deep-pattern testing of IDE, SCSI, and ST-506/412-interface drives, writing literally millions of bytes of data to every sector of the drive to see whether it can properly retain data; moving data if the sector where it is stored is flawed; and marking the sector as bad in the FAT.

> NOTE: A stand-alone product called SpinRite, now in version 3.1, performs many of the same features as Calibrate, including re-interleaving drive sectors, and it is widely regarded as the best program for re-interleaving drives. However, the need for Calibrate and SpinRite has greatly diminished as controllers have become quicker and drives have had their low-level formats performed at the factory at optimum settings.

Due to the excellent Disk Editor, anybody serious about data recovery needs a copy of Norton Utilities. The many other modules that are included are excellent as well, and the latest versions now include NDIAGS, which is a comprehensive PC hardware diagnostic.

Symantec and its complete list of product offerings can be found on the Internet:

http://www.symantec.com/lit/util/doswinut/doswinut.html

## Shareware and Public-Domain Diagnostics

Many excellent public-domain diagnostic programs are available, including programs for diagnosing problems with memory, hard disks, floppy disks, monitors and video adapters, as well as virtually any other part of the system. These programs are excellent for users who do not perform frequent troubleshooting or who are on a budget.

© Copyright, Macmillan Computer Publishing. All rights reserved.