x86 ROM Boot Loader (Windows Embedded CE 6.0)
1/5/2010
The x86 ROM boot loader, commonly referred to as romboot, is a small boot loader that resides in system flash memory, usually as 256 KB flash electrically erasable programmable read only memory (EEPROM).
During power-up, romboot handles the hardware platform initialization tasks that would normally be done by the hardware platform basic input/output system (BIOS).
When the hardware platform is initialized, romboot supports downloading a boot loader image over Ethernet or booting the boot loader image from a local Integrated Device Electronics (IDE) drive.
Because romboot resides in flash memory, where the BIOS normally resides, the boot loader replaces the BIOS.
This means that there is no BIOS functionality available to the OS.
This also means that romboot configures the hardware platform, which includes the following tasks:
- Setting up the memory controller
- Setting up the host bridge
- Enumerating PCI
The primary advantage of using romboot is that it is a fast boot loader.
Romboot is an alternative to LoadCEPC.exe and does not require BIOS or Microsoft MS-DOS–based services for the x86 hardware platforms that it supports, providing a faster boot and download alternative.
The boot loader supports downloading an image over an Ethernet connection, using DHCP to obtain an IP address, or by static IP, as well as from a local IDE/ATA hard disk.
Note
When you boot from a hard disk, place the binary run-time image file, NK.bin, in the root directory of the active partition.
For more information about the x86 ROM boot loader and its functionalities, see the following topics:
- x86 Source Organization
- x86 ROM Boot Loader Porting to Other x86 Hardware Platforms
- Known Issues with the x86 ROM Boot Loader
- Troubleshooting the x86 ROM Boot Loader