BIOS
(correct offset of jump instruction) |
m (Fix inter-wiki link for PC.) |
||
Line 4: | Line 4: | ||
|extensions={{ext|bin}}, {{ext|rom}} | |extensions={{ext|bin}}, {{ext|rom}} | ||
}} | }} | ||
− | '''BIOS''' (Basic Input Output System), is a [[Read Only Memory|ROM]] chip containing code (firmware) to control peripherals attached to a [[ | + | '''BIOS''' (Basic Input Output System), is a [[Read Only Memory|ROM]] chip containing code (firmware) to control peripherals attached to a [[Wikipedia:PC|PC]]. |
The x86 BIOS entry point is located at physical address <code>0xfffffff0</code> (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. | The x86 BIOS entry point is located at physical address <code>0xfffffff0</code> (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. |
Revision as of 07:14, 2 August 2025
BIOS (Basic Input Output System), is a ROM chip containing code (firmware) to control peripherals attached to a 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.
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
.
Sample files
- http://minuszerodegrees.net/rom/rom.htm - many older ROM images without Plug and Play.
- https://www.xtideuniversalbios.org/ - BIOS for IDE ATA hard disks.
- http://rayer.g6.cz/romos/romose.htm -
romos.bin
for loading FreeDOS. - https://www.qemu.org/ - Download QEMU and extract or install → *.bin - ROM examples for cards with PCI interface.