Debugging BIOS Code

BIOS code is not built from standard assembly code, so it requires different debugging techniques.

On an x86-based processor, the BIOS uses 16-bit code. To disassemble this code, use the ux (Unassemble x86 BIOS) command. To display information about the Intel Multiprocessor Specification (MPS), use the !mps extension.

If you are debugging ACPI BIOS code, the preceding commands do not work, because ACPI BIOS is written in ACPI Machine Language (AML). To disassemble this code, you should use !amli u. For more information about this kind of debugging, see ACPI Debugging.