Asus Crosshair II Formula: Debug Code

Debug Code: Asus Crosshair II Formula

The appendix explains the debug code on

the LCD poster.

Debug Code

A

Chapter summary

A

A.1 Debug Code ..................................................................................A-1

ASUS Crosshair

A.1 Debug Code Table

Code Description

CPU INIT CPU Initiation

DET CPU Test CMOS R/W functionality.

Early chipset initialization:

-Disable shadow RAM

CHIPINIT

-Disable L2 cache (socket 7 or below)

-Program basic chipset registers

Detect memory

DET DRAM

-Auto-detection of DRAM size, type and ECC.

-Auto-detection of L2 cache (socket 7 or below)

DC FCODE Expand compressed BIOS code to DRAM

EFSHADOW Call chipset hook to copy BIOS back to E000 & F000 shadow RAM.

DC XCODE Expand the Xgroup codes locating in physical address 1000:0

INIT IO Initial Superio_Early_Init switch.

1. Blank out screen

CLR SCRN

2. Clear CMOS error ag

1. Clear 8042 interface

INIT8042

2. Initialize 8042 self-test

1. Test special keyboard controller for Winbond 977 series Super I/O chips.

ENABLEKB

2. Enable keyboard interface.

1. Disable PS/2 mouse interface (optional).

2. Auto detect ports for keyboard & mouse followed by a port & interface

DIS MS

swap (optional).

3. Reset keyboard for Winbond 977 series Super I/O chips.

Test F000h segment shadow to see whether it is R/W-able or not. If test

R/W FSEG

fails, keep beeping the speaker.

Auto detect ash type to load appropriate ash R/W codes into the run time

DET FLASH

area in F000 for ESCD & DMI support.

Use walking 1’s algorithm to check out interface in CMOS circuitry. Also set

TESTCMOS

real-time clock power status, and then check for override.

Program chipset default values into chipset. Chipset default values are

PRG CHIP

MODBINable by OEM customers.

INIT CLK Initial Early_Init_Onboard_Generator switch.

Detect CPU information including brand, SMI type (Cyrix or Intel) and CPU

CHECKCPU

level (586 or 686).

Initial interrupts vector table. If no special specied, all H/W

INTRINIT

interrupts are directed to SPURIOUS_INT_HDLR & S/W interrupts to

SPURIOUS_soft_HDLR.

REC MPS Initial EARLY_PM_INIT switch.

Reserved Load keyboard matrix (notebook platform)

Reserved HPM initialization (notebook platform)

1. Check validity of RTC value:

e.g. a value of 5Ah is an invalid value for RTC minute.

2. Load CMOS settings into BIOS stack. If CMOS checksum fails, use

default value instead.

3. Prepare BIOS resource map for PCI & PnP use. If ESCD is valid, take

into consideration of the ESCD’s legacy information.

SET FDD

4. Onboard clock generator initialization. Disable respective clock resource

to empty PCI & DIMM slots.

5. Early PCI initialization:

-Enumerate PCI bus number

-Assign memory & I/O resource

-Search for a valid VGA device & VGA BIOS, and put it nto C000:0.

INITINT9 Initialize INT 09 buffer

ASUS Crosshair A-1

1. Program CPU internal MTRR (P6 & PII) for 0-640K memory address.

2. Initialize the APIC for Pentium class CPU.

3. Program early chipset according to CMOS setup. Example: onboard IDE

CPUSPEED

controller.

4. Measure CPU speed.

5. Invoke video BIOS.

1. Initialize multi-language

TESTVRAM

2. Put information on screen display, including Award title, CPU type, CPU

speed .

RESET KB Reset keyboard except Winbond 977 series Super I/O chips.

8254TEST

Test 8254

8259MSK1 Test 8259 interrupt mask bits for channel 1.

8259MSK2 Test 8259 interrupt mask bits for channel 2.

8259TEST Test 8259 functionality.

Reserved Initialize EISA slot

1. Calculate total memory by testing the last double word of each 64K page.

COUNTMEM

2. Program write allocation for AMD K5 CPU.

1. Program MTRR of M1 CPU

2. Initialize L2 cache for P6 class CPU & program CPU with proper

cacheable range.

MP INIT

3. Initialize the APIC for P6 class CPU.

4. On MP platform, adjust the cacheable range to smaller one in case the

cacheable ranges between each CPU are not identical.

USB INIT Initialize USB

TEST MEM Test all memory (clear all extended memory to 0)

SHOW MP Display number of processors (multi-processor platform)

1. Display PnP logo

PNP LOGO

2. Early ISA PnP initialization

-Assign CSN to every ISA PnP device.

Reserved Initialize the combined Trend Anti-Virus code.

(Optional Feature)

SHOW EZF

Show message for entering AWDFLASH.EXE from FDD (optional)

1. Initialize Init_Onboard_Super_IO switch.

ONBD IO

2. Initialize Init_Onbaord_AUDIO switch.

Okay to enter Setup utility; i.e. not until this POST stage can users enter the

EN SETUP

CMOS setup utility.

MSINSTAL Initialize PS/2 Mouse

CHK ACPI Prepare memory size information for function call: INT 15h ax=E820h

EN CACHE Turn on L2 cache

Program chipset registers according to items described in Setup & Auto-

SET CHIP

conguration table.

1. Assign resources to all ISA PnP devices.

AUTO CFG

2. Auto assign ports to onboard COM ports if the corresponding item in

Setup is set to “AUTO”.

1. Initialize oppy controller

INIT FDC

2. Set up oppy related elds in 40:hardware.

(Optional Feature)

Enter AWDFLASH.EXE if :

CUTIRQ12

-AWDFLASH is found in oppy drive.

-ALT+F2 is pressed

DET IDE Detect & install all IDE devices: HDD, LS120, ZIP, CDROM…..

COM/LPT Detect serial ports & parallel ports.

DET FPU Detect & install co-processor

A-2 Appendix: Debug Code Table

CPU CHG CPU change

CPR FAIL CPR error

FAN FAIL Fan error

UCODEERR

UCODE error

FLOPYERR Floppy error

KB ERROR Keyboard error

HD ERR HDD error

CMOS ERR CMOS error

MS ERROR Mouse error

80P ERR

80 port error

BOOT CHG Boot device change

SMARTERR HDD smart function error

HM ERROR Hard monitor error

AINETERR AI NET error

CASEOPEN Case open

Clear EPA or customization logo.

1. Call chipset power management hook.

PASSWORD

2. Recover the text fond used by EPA logo (not for full screen logo)

3. If password is set, ask for password.

MEM2CMOS Save all data in stack back to CMOS

Initialize ISA PnP boot devices

1. USB nal Initialization

2. NET PC: Build SYSID structure

3. Switch screen back to text mode

INIT PNP

4. Set up ACPI table at top of memory.

USB FINAL

5. Invoke ISA adapter ROMs

6. Assign IRQs to PCI devices

7. Initialize APM

8. Clear noise of IRQs.

Read HDD boot sector information for Trend Anti-Virus code

1. Enable L2 cache

2. Program boot up speed

READ HDD

3. Chipset nal initialization.

BOOTMENU

4. Power management nal initialization

5. Clear screen & display summary table

6. Program K6 write allocation

7. Program P6 class write combining

1. Program daylight saving

NUM LOCK

2. Update keyboard LED & typematic rate

1. Build MP table

2. Build & update ESCD

UPDT DMI

3. Set CMOS century to 20h or 19h

4. Load CMOS time into DOS timer tick

5. Build MSIRQ routing table.

INT 19H Boot attempt (INT 19h)

ASUS Crosshair A-3

A-4 Appendix: Debug Code Table