Create a PCI boot manager option ROM (save in bios)
You can create a pci option rom file with
plpbtrom-0.6.zip.
You can store the option rom in your bios or to the rom of a network card and run
it from there.
Usage: plpbtrom [OPTIONS] input-file output-file
Options:
========
-h this help
-vendorid id hex value of the card vendor
-deviceid id hex value of device
-grabid grab vendor/device id from PCI ROM file
-hidden disable option rom text output
-nodisable do not allow option rom disable
-forceINT force hook interrupt
-INT18 hook int 18h
-compress compress option rom
-size set rom to a size. examples: 64k, 128k, 1m, ...
input-file boot manager file (ex. plpbtrom.bin)
output-file ROM file name
Examples
- plpbtrom plpbtrom.bin plpbt.rom
- plpbtrom -vendorid 0x10ec -deviceid 0x8139 plpbtrom.bin plpbt.rom
- plpbtrom -grabid netcard.rom plpbtrom.bin plpbt.rom
- plpbtrom -grabid netcard.rom -size 64k plpbtrom.bin plpbt.rom
Special parameters
-forceINT: This forces the boot manager to hook the INT 19h/INT 18h. If you have a PNP bios, then the
boot manager does not use the PNP bios feature of the boot device sequence. The boot manager will be started before any
boot device is tried (when INT 19h mode is used) or the boot manager is the last program that is started when all boot devices
failed to boot (when INT 18h mode is used).
-INT18: Hook INT18h instead of INT19h. INT19h is the default mode.
Files
plpbtrom - Linux executable
plpbtrom.exe - Windows executable
plpbtrom.bin - Boot Manager
Difference plpbtrom.bin and plpbt.bin
plpbtrom.bin gives the control of the boot
process back to the bios with a far return if you press esc. plpbt.bin
makes a reboot with int 19h.
Passing parameters to the boot manager with the linux kernel command line is not supported
by plpbtrom.bin
You can configure plpbtrom.bin like plpbt.bin with plpcfgbt.
You can enable/disable a hotkey to start the boot manager.
How to test a ROM
You can test your rom file with the free virtual machine qemu.
qemu -hda harddisk.img -option-rom plpbt.rom
If you have no hard disk image file then take one from the qemu download page
or use a floppy image.
qemu -fda floppy.img -option-rom plpbt.rom
How to flash an AMI bios
Do this at your own risk! This can damage your pc.
Download the Ami bios flash utility and save your current bios.
AMI Homepage
It's a DOS program, run the following command from a DOS floppy to save your bios
afudos /obios.rom
-
Use the Windows tool MMTools
to replace the network rom with the plpbt.rom.
Load the file bios.rom
Find the network option rom. It has the id 20, the name PCI Option ROM
and the RunLoc number VendorID:DeviceID of your network card. Maybe there are other option roms
in your bios. Take care that you choose the network option rom.
Click on it that it's marked.
Click at the Replace Tab
Load as Module file the plpbt.rom file.
Press the Replace button
Press the Save ROM as and give it the name mybios.rom
Now comes the dangerous part. Flashing the bios.
I suggest setting the bios to the default settings and save it. Then boot from a dos floppy and run
afudos /imybios.rom
Do not turn off the pc during flash. After the flash has completed, go to the bios and do again a reset to the
default settings.
If all is ok, you should be able to configure the bios and start the boot manager during the boot process.
How to flash an AWARD bios
Do this at your own risk! This can damage your pc.
Download the Award bios flash utility aflash. You should find it at
your Motherboard homepage in the bios section.
Run it from a DOS floppy and save your current bios to a file. Give it the name bios.rom.
Search the file cbrom in the web. There are different versions, not all will work
with your bios file, so you have to test it with different versions.
Run cbrom bios.rom /d
This should list all parts of the bios rom. I cannot give you the command to replace the rom. None of the
cbrom programs where able to display the content of my bios rom file.
You have to test it by yourself.
When you updated the bios rom file, then flash it.
I suggest setting the bios to the default settings and save it. Then boot from a dos floppy and run
with awdflash.
If all is ok, you should be able to configure the bios and start the boot manager during the boot process.
© 2024 by
Elmar Hanlhofer
|