The Haiku/BeOS Tip Server
Tips and tricks for Haiku/BeOS users

Creating BeOS boot floppies, pt. II

Contributed by: ITO Takayuki
This tip is valid for: Both BeOS and Haiku

This tip builds on information in Creating BeOS Boot Floppies, showing you how to create custom boot floppies including specific drivers.

The -base option is explained as specifying from which partition the floppy boots. Reading the /bin/makebootfloppy shell script, it turns out that the script creates a boot floppy by gathering necessary files (the kernel and drivers) from an existing BeOS partition, and the -base option specifies from which partition it gathers the files.

A possible usage of this option is that, for example, when you have installed any additional device drivers and don’t want them to be included in a new boot floppy, mount the CD and type as follows:

$ makebootfloppy -base '/BeOS R4.5 x86'

This will give you a “pure” R4.5 boot floppy, with no extra drivers. [Technically, this example may be inappropriate because additional drivers will not be included anyway as long as they are installed under your home directory, not in the system directory. But it does illustrate the point.]

Additionally on the R4.5.1 boot floppy there is a virtual disk driver included as ..../drivers/dev/disk/virtual/fmap. This driver is not installed in your R4.5.1 partition, so you can’t create an R4.5.1 boot floppy exactly equivalent to the original one Be provides as an image file. (I don’t know what the driver serves, though…)

If you are a purist, you can install the driver as follows:

(Insert the R4.5.1 boot floppy)
$ dd if=/dev/disk/floppy/raw bs=128k skip=1 | gzip -cd |
  tar xvf - -C /boot beos/system/add-ons/kernel/drivers/dev/disk/virtual
$ cd /system/add-ons/kernel/drivers
$ mv dev/disk/virtual/fmap bin
$ mimeset -f bin/fmap
$ ln -s ../../../bin/fmap dev/disk/virtual/fmap

Now you can create a R4.5.1 boot floppy with the virtual disk driver included.

Theoretically, we should be able to use this technique to install BeOS from/to an unsupported storage device/interface, given an appropriate device driver. For example, a driver for a certain SCSI PC Card may make it possible to install BeOS on notebooks in the “ordinary” manner via an external SCSI CD- ROM drive, without transplanting the hard disk nor using my BeWrite utility.

Be’s Brian Swetland says:

“Essentially, the difference between makebootfloppy and makebootfloppy -cd is that the second one has, in addition to the zbeos bootstrap, a tarfile with the kernel and drivers so that you can boot from non-bios-visible-devices (like CDROM drives). “

Posted in Miscellaneous

(comments are closed).