Netboot Mailing List (by thread)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Addition to etherboot readme

	I got some questions about the mainboard bios stuff. How to use
cbrom an store etherboot in the flash of the board ...
I wrote some explanation which could be added to the readme
(README.TXT in doc) file, section 6. I added it as attachement.

So long,
6.4 sing your mainboard's BIOS to integrate etherboot-code

Newer mainboards that have an AWARD-BIOS can use etherboot without seperate
EPROMS and therefore without the necessity of having a EPROM-programmer[?]. In
order to do this, you need 2 software tools: awdflash.exe, which should be
included in your mainboard package, and cbrom.exe, which is an OEM-tool that
allows modifications of the BIOS. awdflash.exe reads and writes the flashrom
content, whereas cbrom.exe is used to analyze the content of the AWARD BIOS
image. cbrom.exe can also add code to the BIOS image or remove components.
This way you can easily integrate etherboot into your mainboards without even
opening the PC's case. 

After the BIOS image has been saved (e.g. as bios.bin), or in case the current
version of the BIOS has been copied from the board manufacturer's website,
'cbrom bios.bin /d' shows how much space is left on the image for your code. 

As the flashrom holds the compressed BIOS, cbrom will also compress the code
when adding it to the BIOS.  Therefore, 8 to 20 kbyte of free memory is
needed, depending on the network adapter's driver. In case not enough memory
is left, unneeded BIOS components can be removed from the BIOS image to regain
space: the manufacturer's logo or the Symbios/NCR SCSI-code are note needed
for diskless systems. 'cbrom bios.bin /[pci|ncr|logo|isa] release' will remove
those unnessary components. 

The command line "cbrom bios.bin /[pci|isa] bootimg.rom [D000:0]" adds the
compiled etherboot code to the bios. bootimg.rom is the code we would use to
burn onto EEPROMs in other cases. Depending on your network card, either the
pci or isa options have to be used. With isa cards you have to tell cbrom to which RAM location the code will be extracted at boot time. Attention: Compile the
etherboot with the -DASK_BOOT or -DEMERGENCYDISKBOOT option to be able to
access a disk. The code added by cbrom will be executed before the computer
seeks for a boot disk or floppy. 

6.5 Booting with a DOS executable (COM) file

If the computer has to be used with more than one operating systems, for
example using the computer as an X-Terminal in addition to the already
installed NT on the harddrive, etherboot has to be used with the compile-time
option -DASK_BOOT. In case hardware-conflicts beetween Windows NT and
the installed EPROM exist, creating DOS Executables (e.g. using 'make') can provide a useful remedy. Those DOS Executables are comparable in their functionality to .rom images and can be used as substitutes. 

In case an existing DOS-bootsector, stored in BOOTSECT.DOS, cannot be used, 
creating one has to be done
by formatting and installing a harddrive using DOS before installing NT (see
Win-NT Multiboot-HOWTO). In addition the DOS system files are needed (IO.SYS,
MSDOS.SYS, or KERNEL.SYS when using Freedos) and have to be copied into the
directory of the NT loader. If using Autoexec.bat to start the .COM file is
desired, either the particluar COMMAND.COM has to be provided or the etherboot
file needs to be renamed as COMMAND.COM. This file will then be started
instead of the DOS-Shell which is useful for avoiding unwanted user
interaction. Afterwards a line has to be added to BOOT.INI as if DOS was to be

[boot loader]
default=C:\bootsect.dos #add this line if dhcp/tftp should be default action
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Windows NT Workstation, Version 4.0"
[VGA-Modus]" /basevideo /sos
C:\bootsect.dos="DHCP/TFTP (Linux diskless via etherboot)" #our boot option

For requests or suggestions regarding this mailing list archive please write to