| Code | Meaning |
| 000F | 386 CPU bad |
| 0010 | Bad checksum on ROM 0 |
| 0011 | Bad checksum on ROM 1 |
| 011X | RTC register is bad |
| 0120 | RTC failed to tick |
| 0240 | CMOS/RTC lost power |
| 0241 | Invalid checksum, IBM CMOS area |
| 0280 | Invalid checksum, HP CMOS area |
| 02XY | Bad CMOS register, at XY-40 |
| 0301 | 8042 failed to accept reset command |
| 0302 | 8042 failed to respond to reset |
| 0303 | 8042 failed on reset |
| 0311 | 8042 didn't accept "WRITE CMD BYTE" |
| 0312 | 8042 didn't accept data |
| 0321 | 8042 failed to accept scancode, port 68 |
| 0322 | 8042 failed to respond to the above scancode |
| 0323 | 8042 responded incorrectly to the above scancode |
| 0331 | 8042 failed to accept command from port 6A |
| 0332 | 8042 failed to generate SVC on port 67 |
| 0333 | 8042 generated HPINT type on port 65 |
| 0334 | 8042 failed the R/W register on port 69 |
| 0335 | 8042 failed to generate HPINT on IRQ 15 |
| 0336 | 8042 failed to generate HPINT on IRQ 12 |
| 0337 | 8042 failed to generate HPINT on IRQ 11 |
| 0338 | 8042 failed to generate HPINT on IRQ 10 |
| 0339 | 8042 failed to generate HPINT on IRQ 7 |
| 033A | 8042 failed to generate HPINT on IRQ 5 |
| 033B | 8042 failed to generate HPINT on IRQ 4 |
| 033C | 8042 failed to generate HPINT on IRQ 3 |
| 0341 | 8042 failed keyboard interface test command |
| 0342 | 8042didn't respond to interface command |
| 0343 | Keyboard clock line stuck low |
| 0344 | Keyboard clock line stuck high |
| 0345 | Keyboard data line stuck low |
| 0346 | Keyboard data line stuck high |
| 0350 | No ACK from keyboard self test command |
| 0351 | Bad ACK from keyboard self test command |
| 0352 | Keyboard is dead or not connected |
| 0353 | No result from keyboard self test command |
| 0354 | Keyboard self test failed |
| 0401 | 8042 failed to enable gate A-20 |
| 0503 | Serial port dead or non-existent |
| 0505 | Serial port fails port register tests |
| 06XX | Stuck key; XX=scancode of key |
| 0700 | Failed to switch to slow speed |
| 0701 | Failed to switch to fast speed |
| 0702 | Timer failed to interrupt |
| 0703 | CPU clock too slow in slow speed |
| 0704 | CPU clock too fast in slow speed |
| 0707 | CPU clock too slow in fast speed |
| 0708 | CPU clock too fast in fast speed |
| 0709 | Failed to switch bus clock to ATCLK |
| 110X | Timer X (0-2) failed to register test |
| 1200 | Memory refresh signal stuck high |
| 1201 | Memory refresh signal stuck low |
| 211X | DMA 1 failed R/W test at register x (0-7) |
| 212X | DMA 2 failed R/W test at register x (0-7) |
| 221X | Bad DMA page register; X=register 0-7 |
| 300X | HP-HIL controller failed self test; X=data |
| X = xxx1 = > read/write fail with data = 0DA5Ah | |
| X = xx1x = > read/write fail with data = 0DA5Ah | |
| X = x1xx = > read/write fail with data = 0DA5Ah | |
| X = 1xxx = > read/write fail with data = 0DA5Ah | |
| 3010 | HP-HIL device test failed |
| 4XYZ | Lower 640K failed R/W test; |
| X=0,2,4,6 Y>0=Bad U23 Z>0=Bad U13 | |
| X=1,3,5,7 Y>0=Bad U43 Z>0=Bad U33 | |
| X=8 Y>0=Bad U22 Z>0=Bad U12 | |
| X=9 Y>0=Bad U42 Z>0=Bad U32 | |
| 5XYZ | Lower 640K failed marching ones test |
| RAM in lower 640K failed read/write test | |
| X = bbcc = > bb is # 64K of 32 bit word bank | |
| cc = 00 = > byte 0 is bad | |
| cc = 01 = > byte 1 is bad | |
| cc = 02 = > byte 2 is bad | |
| cc = 03 = > byte 3 is bad | |
| YZ = bbbb bbbb = > bits for which b = 1 are bad | |
| 61XY | RAM address line XY stuck |
| Some address lines to RAM are stuck to 0 or 1 | |
| XY = 00bb bbbb = > RAM address line bbbbbb is stuck | |
| XY = 01bb bbbb = > Multiple address lines are stuck bbbbbb is the first bad one | |
| 620X | Lower 640K parity error; Bank X |
| X = Address in 64K bank where parity occurred | |
| 63XY | Parity error above 1MB; Bank XY |
| XY = Address in 64K bank where parity occurred | |
| 6500 | Shadow RAM bad at BIOS segment |
| 6510 | Shadow RAM bad at HP EGA segment |
| 71XY | Master 8259 failed R/W; bits XY |
| XY = bbbb bbbb = > bits which b = 1 is bad | |
| 72XY | Slave 8259 failed R/W; bits XY |
| XY = bbbb bbbb = > bits which b = 1 is bad | |
| 7400 | Master 8259 failed interrupt |
| 7500 | Slave 8259 failed interrupt |
| 9XYZ | Floppy drive controller error |
| X=drive # | |
| Y=0=1st level error | |
| Z=0 Unsuccessful input from FD | |
| Z=1 Unsuccessful output to FDC | |
| Z=2 Error while executing seek | |
| Z=3 Error during recalibrate | |
| Z=4 Error verifying RAM buffer | |
| Z=5 Error while resetting FDC | |
| Z=6 Wrong drive identified | |
| Z=7 Wrong media identified | |
| Z=8 No interrupt from FDC | |
| Z=9 Failed to detect track 0 | |
| Z=A Failed to detect index pulse | |
| Y>1=Higher level error | |
| Y=1=Read sector error, side 0 | |
| Y=2=Read sector error, side 1 | |
| Y=3=Write sector error, side 0 | |
| Y=4=Write sector error, side 1 | |
| Y=5=Format sector error, side 0 | |
| Y=6=Format sector error, side 1 | |
| Y=7=Read ID error, side 0 | |
| Y=8=Read ID error, side 1 | |
| Z=1=No ID address mark | |
| Z=2=No data address mark | |
| Z=3=Media is write protected | |
| Z=4=Sector # wrong | |
| Z=5=Cylinder # wrong | |
| Z=6=Bad cylinder | |
| Z=7=DMA overrun | |
| Z=8=ID CRC error | |
| Z=9=Data CRC error | |
| Z=A=End of cylinder | |
| Z=B=Unrecognizable error | |
| A001 | No 80287 detected |
| A002 | 80287 failed stack register R/W test |
| A00C | No zero-divide interrupt from 80287 |
| AF00 | Weitek coprocessor didn't enter protected mode |
| AF01 | Weitek coprocessor nor present |
| AF02 | Weitek coprocessor fails register test |
| AF05 | Weitek coprocessor fails addition test |
| AF06 | Weitek coprocessor fails interrupt test |
| AF0C | Weitek coprocessor fails interrupt test |
| CXYZ | R/W error on extended RAM in XY bank |
| X = 0 = > Even byte bad | |
| X = 1 = > Odd byte bad | |
| XY = Address in 64K bank where RAM failed | |
| CFFF | No extended RAM found |
| EXYZ | Extended RAM marching ones failure at XYZ |
| X = 0 = > Byte 0 is bad | |
| X = 1 = > Byte 1 is bad | |
| X = 2 = > Byte 2 is bad | |
| X = 3 = > Byte 3 is bad |