Phoenix BIOS chip on a motherboard.

Computer BIOS / POST Error Codes

Booting the Computer

When you first apply power to a PC type computer, it begins running a firmware program stored in non-volatile memory in a chip on the motherboard. Newer systems use UEFI or the Unified Extensible Firmware Interface, but older systems use the BIOS (or Basic Input/Output System) defined by IBM in the early 1980s. The firmware performs some power-on self-test operations and detects the processor and memory. It then initializes various programmable devices which may have their own firmware. If all that succeeds, a system with BIOS emits a single beep to indicate success. Any problems encountered along the way cause other audible codes. This page lists those possible error codes, which vary by manufacturer.

For much more on BIOS versus UEFI firmware and how the operating system boots and start services see my Linux booting page.

For multibooting Windows versus OpenBSD or other operating systems, see my multiboot page.

Only after this testing and initialization are completed can the system progress to loading and starting the full operating system. The stages of this operation are described below.

POST

The Power-On Self Test or POST first finds the CPU and then finds the memory.

Initialization

Start-up values are placed in programmable devices in this order: system board devices, then the video controller, then the I/O controller.

One Beep is Good

A typical BIOS on a system other than a laptop emits one beep when the POST and Initialization stages complete successfully. Other audible codes indicate errors.

At this point the video card should be initialized and you should see the BIOS logo and some narrative output on the display as it tests the system memory that it detected.

You will be told how to get into the BIOS setup, typically pressing <Escape> or <Delete> or <F2> or <F12> or some other key. Read and act quickly, as you have a rather short time to do this.

Hardware Inventory

The output is visible for just a very short time, but you may be able to notice as it detected the I/O controllers, inventoried the PATA and SATA disks, and listed other hardware devices by IRQ and possibly address.

Booting the Operating System

The BIOS then inventories the bootable devices in order according to the list in its configuration. Some potentially bootable devices may have no media present, such as the CD/DVD drive or the USB ports.

For those bootable devices with media present — all the disks plus the populated removable media — it looks for the first one of those media with a valid boot block. This is the first 512-byte block on the media.

Phoenix BIOS chip on a PC motherboard.
Phoenix BIOS chip on a PC motherboard.

This boot block is the system-wide Master Boot Record. It carries out the first stage of loading the operating system from storage into RAM and starting it. See the description of the operating system boot process for more details.

A Phoenix BIOS chip is seen above and at right, near one corner of a system board next to the end of two unpopulated PCI bus slots.

BIOS POST Beep Error Codes

As mentioned above, one beep generally means that the POST and following stages found and initialized the CPU, memory, video and system board I/O interfaces. More than one beep means trouble, see the following tables.

No beep at all might mean that POST or the initialization failed. Or it might simply mean that no speaker is attached to the system board!

AMI / American Megatrends

American Megatrends was founded in 1985 and is headquartered near Norcross, Georgia, part of the Atlanta metropolitan area.

AMI
Code Description
1 short All is good!
2 short Parity error in the first 64 kbytes of RAM.
3 short Memory error in the first 64 kbytes of RAM.
4 short Memory error in the first 64 kbytes of RAM, plus a non-functional timer.
5 short CPU error
6 short Keyboard controller error.
7 short CPU virtual mode exception error.
8 short Read/write error on video controller memory.
1 long, 8 short Video controller display/retrace error.
9 short ROM BIOS checksum error. This may be caused by the CMOS battery running down.
10 short CMOS shutdown read/write error. This is likely caused by the CMOS battery running down.
11 short L2 cache error.

Phoenix Technologies

Phoenix Technologies has been around since 1979, giving them plenty of time to add details. The BIOS goes through a series of tasks, writing a one-byte test-point error code to I/O port 0x80h at the start of each. For examples, 0x04 for the "Get CPU type" task, 0x0A for "Initialize CPU registers", 0x0B for "Enable CPU cache", and so on. Note that the tasks are not done in numerical order by error code.

If an error is encountered, the BIOS attempts to initialize the video display and write the current code at the upper left of the screen. It also generates a beep code from the test point error code by:

  1. Break 8-bit error code into four 2-bit groups.
  2. Add 1 to each 2-bit value, forming a sequence of four digits each in the range 1 through 4.
  3. Emit that sequence of numbers as a series of beeps.

For example, "Test 8742 Keyboard Controller" is task 0x22, so:

0x22 = 00100010 --> 00 10 00 10 --> 0 2 0 2 --> 1 3 1 3
      convert to     break into     convert     add 1 to each,
        binary        4 pieces    to decimal    that many beeps

The following are among the possible Phoenix BIOS beep error codes:

Phoenix
Code Description
1 All is good!
1-1-3-3 CPU failure
1-1-3-4 CPU failure
1-1-4-1 CPU failure
1-2-2-1 Keyboard controller failure
1-2-2-3 BIOS ROM checksum error
1-3-1-1 DRAM memory refresh error
1-3-1-3 Keyboard controller failure
1-3-3-1 Memory failure
1-3-3-2 Memory failure
1-3-3-3 Memory failure
1-3-4-1 Memory failure
1-3-4-3 Memory failure
1-4-1-1 Memory failure
2-1-2-2 POST device initialization failure
2-1-2-3 BIOS ROM copyright notice error
2-2-3-1 Unexpected interrupt
2-2-4-1 Memory failure

Award

Award Software International existed for just a couple of years, from its founding in 1996 until it was absorbed inthe Phoenix Technologies in mid 1998. On top of that, there were many versions of the Award BIOS and they were customized and supported by the system board manufacturers.

There were some codes that seemed to be fairly standard, shown below.

But seriously, if you have an Award BIOS then you have some old computing hardware. It's time to upgrade!

AWARD
Code Description
1 long All is good!
1 long, 2 short Video controller could not be initialized.
Repeated beeping CPU or memory error, excessive CPU heat or mis-seated CPU or memory.

IBM

Speaking of antiquated hardware, IBM made PCs back in the early 1980s. Some early "PC compatible" hardware was designed by reverse-engineering, including the original IBM PC BIOS.

Original IBM BIOS Codes
Code Description
1 long All is good!
No beep, or
continuous tone, or
repeating short beet
Loose card, low voltage or other basic electrical problem.
2 short Initialization error. The error code will be displayed on the screen:
Range Error is in...
100—199 System board
200—299 Memory
300—399 Keyboard
400—499 Monochrome display controller
500—599 Color display controller
600—699 Floppy disk drive or controller
700—799 Math coprocessor
900—999 Parallel port
1000—1099 Second parallel port
1100—1299 Asynchronous communication port
1300—1399 Game port
1400—1499 Printer
1500—1599 Synchronous communication port
1700—1799 Hard disk or controller
1800—1899 XT expansion unit
2000—2199 Bisynchronous communication port
2400—2599 EGA/MCA system board video
3000—3199 LAN adapter
4800—4899 Internal modem
7000—7099 Phoenix BIOS chips
7300—7399 3.5" floppy disk drive
8900—8999 MIDI adapter
11200—11299 SCSI adapter
21000—21099 SCSI fixed disk and controller
21500—21599 SCSI CD-ROM
1 long, 1 short System board problem
1 long, 2 short, or
1 long, 3 short
Video controller problem
3 long 3270 keyboard adapter problem