BIOS

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(add samples and identification section)
(correct offset of jump instruction)
 
Line 12: Line 12:
 
== Identification ==
 
== Identification ==
 
ROM images start with bytes {{magic|0xaa 0x55}}.
 
ROM images start with bytes {{magic|0xaa 0x55}}.
At offset 2 the initialization vector is stored.
+
At offset 3 the initialization vector is stored.
 
In many cases this is a 3 byte jump instruction starting with hexadecimal value <code>0xE9</code>.
 
In many cases this is a 3 byte jump instruction starting with hexadecimal value <code>0xE9</code>.
 
Images for cards with PCI interface contain a 4 byte signature <code>PCIR</code>.
 
Images for cards with PCI interface contain a 4 byte signature <code>PCIR</code>.

Latest revision as of 00:53, 6 April 2022

File Format
Name BIOS
Ontology
Extension(s) .bin, .rom

BIOS (Basic Input Output System), is a ROM chip containing code (firmware) to control peripherals attached to a wikipedia:PC.

The x86 BIOS entry point is located at physical address 0xfffffff0 (usually corresponding to 16 bytes from the end of the BIOS image) and is executed in 16-bit real mode; it usually contains a jump instruction (either far or near). There are no other guarantees about BIOS image layout, although many vendors have developed in-house formats.

UEFI firmware images usually contain an embedded Firmware File System.

[edit] Identification

ROM images start with bytes 0xaa 0x55. At offset 3 the initialization vector is stored. In many cases this is a 3 byte jump instruction starting with hexadecimal value 0xE9. Images for cards with PCI interface contain a 4 byte signature PCIR. Images for cards which support plug and Play feature contain a 4 byte signature $PnP.

[edit] Sample files

[edit] Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox