Hi, 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, Dirk
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 rtl8139.com') 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 booted: [boot loader] timeout=20 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 netboot@gkminix.han.de.