English

Option ROM

An Option ROM typically consists of PC firmware that is called by the BIOS. For example, an adapter card that controls a boot device might contain firmware that is used to connect the device to the system once the Option ROM is loaded. An Option ROM typically consists of PC firmware that is called by the BIOS. For example, an adapter card that controls a boot device might contain firmware that is used to connect the device to the system once the Option ROM is loaded. A common option ROM is the video BIOS found on IBM PC compatible video cards. This is a special case of an option ROM, as it is loaded very early on in the boot process so that output from the power-on self-test (POST) can be displayed. The video BIOS is almost always located in the C000 memory segment, the start of the memory area reserved for option ROMs. Other ROMs can be located from segments C800 all the way up to F400 in early PCs. The final search address was eventually limited to E000 in later products. The BIOS Boot Specification (BBS) requires that option ROMs be aligned to 2kB boundaries (e.g. segments C800, C880, C900, C980, etc.). The first two bytes of the ROM must be 55 AA. After the basic POST checks are complete, the option ROMs are normally initialized. This gives them the chance to hook (intercept) system interrupts, in order to provide increased functionality to the system. For example, a SCSI controller card may hook INT 13 which is responsible for providing disk services. Once it has done this, any subsequent calls to INT 13H will be 'caught' by the SCSI option ROM (or 'SCSI BIOS'), allowing it to insert details about any disks that may exist on the SCSI bus. Before it had hooked the interrupt there may have been no disks on the system, but by intercepting the interrupt and altering the values returned, the SCSI BIOS can make all the disks on the SCSI bus visible to the system.

[ "Initialization", "BIOS" ]
Parent Topic
Child Topic
    No Parent Topic