Procedure
|
Explanation
|
NMI Disable
|
NMI interrupt line to the CPU is disabled by setting bit 7 I/O port 70h (CMOS).
|
Power On Delay
|
Once the keyboard controller gets power, it sets the hard and soft reset bits. Check the keyboard controller or clock generator.
|
Initialise Chipsets
|
Check the BIOS, CLOCK or chipsets.
|
Reset Determination
|
The BIOS reads the bits in the keyboard controller to see if a hard or soft reset is required (a soft reset will not test memory above 64K). Failure could be the BIOS or keyboard controller.
|
ROM BIOS Checksum
|
The BIOS performs a checksum on itself and adds a preset factory value that should make it equal 00. Failure is due to the BIOS chips.
|
Keyboard Test
|
A command is sent to the 8042 (keyboard controller) which performs a test and sets a buffer space for commands. After the buffer is defined the BIOS sends a command byte, writes data to the buffer, checks the high order bits (Pin 23) of the internal keyboard controller and issues a No Operation (NOP) command.
|
CMOS
|
Shutdown byte in CMOS RAM offset 0F is tested, the BIOS checksum calculated and diagnostic byte (0E) updated before the CMOS RAM area is initialised and updated for date and time. Check RTC/CMOS chip or battery.
|
8237/8259 Disable
|
The DMA and Interrupt Controller are disabled before the POST proceeds any further. Check the 8237 or 8259 chips.
|
Video Disable
|
The video controller is disabled and Port B initialised. Check the video adapter if you get problems here.
|
Chipset Init/Memory Detect
|
Memory addressed in 64K blocks; failure would be in the chipset. If all memory is not seen, failure could be in a chip in the block after the last one seen.
|
PIT test
|
The timing functions of the 8254 interrupt timer are tested. The PIT or RTC chips normally cause problems here.
|
Memory Refresh
|
PIT's ability to refresh memory tested (if an XT, DMA controller #1 handles this). Failure is normally the PIT (8254) in ATs or the 8237 (DMA #1) in XTs.
|
Address Lines
|
Test the address lines to the first 64K of RAM. An address line failure.
|
Base 64K
|
Data patterns are written to the first 64K, unless there is a bad RAM chip in which case you will get a failure.
|
Chipset Initialisation
|
The PIT, PIC and DMA controllers are enabled.
|
Set Interrupt Table
|
Interrupt vector table used by PIC is installed in low memory, the first 2K.
|
8042 check
|
The BIOS reads the buffer area of the keyboard controller I/O port 60. Failure here is normally the keyboard controller.
|
Video Tests
|
The type of video adapter is checked for then a series of tests is performed on the adapter and monitor.
|
BIOS Data Area
|
The vector table is checked for proper operation and video memory verified before protected mode tests are entered into. This is done so that any errors found are displayed on the monitor.
|
Protected Mode Tests
|
Perform reads and writes to all memory below 1 Mb. Failures at this point indicate a bad RAM chip, the 8042 chip or a data line.
|
DMA Chips
|
The DMA registers are tested using a data pattern.
|
Final Initialisation
|
These differ with each version. Typically, the floppy and hard drives are tested and initialised, and a check made for serial and
devices. The information gathered is then compared against the contents of the CMOS, and you will see the results of any failures on the monitor.
|
Boot
|
The BIOS hands over control to the Int 19 bootloader; this is where you would see error messages such as non-system disk.
|