DIY Bootable CDs

Quick Start:- Grab a boot floppy image of your choice and rename it (ALL IN LOWER CASE) to floppy.img. Unzip the direct download zmakeiso.zip (128k/free) and place the renamed floppy.img file into the folder named zfiles. Double-click the go.bat file and mybootcd.iso should be created in the same folder that holds go.bat. Burn mybootcd.iso (see IMPORTANT NOTES inset) to create your bootable CD; a boot CD that will attempt to emulate/mimic the boot floppy image that was used in the first place.

IMPORTANT NOTES

(a) Burning an ISO (or other CD image file):

It is NOT SUFFICIENT to simply copy the .iso file to a CD as a single data file. Such files are archives of other files and must be unpacked and burned by appropriate software as an integrated manouevre.

An .iso (or .bin or .cue or .nrg) or other image file is a complete image of a CD and the correct settings must be used within the burning software to copy/burn the files inside that image to your own CD.

If you have a CD/DVD burner and no appropriate retail software (such as Ahead's Nero or Roxio's EasyCd) or just want a simple iso-burner then try using the freeware application BurnCDCC (60K) or ImgBurn (813K).

(b) Direct Booting:

Bootable CDs do not always boot. This is addressed on our Booting Bootable CDs page.

(c) Indirect Booting:

When CD's wont boot directly it may be possible to initiate the process from a Boot Manager on another medium. Smart Boot Manager (SBM) is particularly useful in this regard and other boot managers such as XOSL and BootIt-NG can also be successful.

Getting from a collection of files to a bootable CD is basically a two-stage manouevre. The first stage is to create a "bootable ISO". The second stage is to burn the ISO to a CD/DVD. See the "Important Notes" for ways of doing the burning. (For completeness we should say that burning can also be done from command line utilities - though we don't address that here). Some software packages will integrate the ISO formation and the burning of the ISO image file's contents into a single process.

[1] Simple Transformation of a Bootable Floppy into a Bootable CD

[2] Technical Notes

Floppy Emulation

We have outlined at "On Screen Messages and Emulation" how bootable CDs are split into both a bootable and a data compartment. Advice on making one's own bootable CDs on this page will be restricted to "Floppy Emulation" utilising a floppy image file. If you need help in getting an appropriate image try our "Obtaining a Floppy Image" page for some assistance.

How Floppy Emulation Boots a CD

Properly made DIY boot CDs will typically boot to DOS or Linux by using the image file of an actual bootable floppy, burned to a specific "El Torito defined boot location" on the CD. The starting sector of this area (which can be viewed or extracted using programs like IsoBuster) is sought during boot-up. If all is well, the boot process should proceed and the screen display then mimic what the original floppy would have portrayed.

For example, a typical Windows 98 start-up floppy-image would (even though running from a location on the CDROM) still prompt you whether you want CD support or not. In such a case you would still need to choose the "With CDROM Support" option from the screen display options if you wanted to be able to access the "CD compartment" of the same CDROM! That is to say for the CDROM files to be accessible from the "Floppy compartment" of the very same disk. These two compartments have two different drive letters. The floppy part gets A: (and should load as per usual any config.sys and autoexec files) while the physical floppy itself gets "bumped up" to B:. The CD part gets whatever the original floppy drive would have designated to it using any integral "CDROM Support" files/drivers loaded by config.sys, etc.

CD Booting Limitations

CD-booting can be invaluable on systems, particular laptops that no longer ship with a floppy drive. Booting to floppies or to floppy-emulated CDs varies in one very important aspect and which may not be immediately obvious. The emulated CD (even if it is CDRW rewritable media) will not be able to write to itself in an analogous way that a floppy can write directly to its own magnetic medium. Thus if programs running on any part of the CD require such output (and some of them do) they must be temporarily shifted to somewhere, like a RAM-drive or a Hard-Drive, where they can accomplish this.

This "shifting" is commonly achieved by creating RAM-drives (specially reserved areas in memory that can be given a drive letter). The config.sys, autoexec.bat, etc, contained in the primary floppy image file can be used to automate loading and running programs from such a RAM-drive. In fact a whole "secondary image file" can be loaded into a RAM-drive. Such secondaries can also be bootable and it may be possible to perform a "virtual reboot" of such a bootable RAM-drive. Unfortunately this may not work because the sequence of loading the floppy-emulated CDROM's boot sector and then the RAM-drive's boot sector may not "play nice" with the int13 calls to the BIOS. This is a different process than, say simply booting to DOS on the bootable CD, and then using the command line to run other utilities either directly or on "ordinary" RAM-drives.

Don't forget the Hard Drive

As long as the hard drive has partitions that can be accessed from a floppy-emulated CD remember that one can always manually copy files from the CD to the hard drive and run them from there if they won't run from their location on the CD. If running DOS on the boot CD then also remember that one can also run any existing DOS utilities that are accessible on the hard drive. Thus one can navigate to installed utilities (such as Partition Magic or Grisoft's AVG antivirus) on FAT partitions and run the DOS versions directly from there. If you don't know your DOS commands then there is a comprehesive list and examples at MS-DOS ver 6.22 & up.

NB

At the expense of repetition the floppy used to create the floppy-emulated CD must be a non-corrupt bootable floppy and should have CDROM support on it if it is intended to access the CD itself, when booted-to.

[3] Bart's Methods