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.
(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.
 Simple Transformation of a Bootable Floppy into a Bootable CD
- The "Quick Start" section above uses the mkisofs utility (from cdrtools-latest) to create a "bootable iso" from a floppy image; (this version of mkisofs does not require an associated cygwin.dll file).
- The mkisofs program can be run with a variety of "switches" but just the simplest are used when the go.bat file is run; (go.bat is a very simple batch file inside zmakeiso that saves one having to execute mkisofs from a command line). The go.bat file can be edited (r-click and choose edit) with a text editor such as notepad should that be desired or mkisofs run directly from a command line. If an appropriate floppy.img is not included then an iso of sorts should still be created but it will not be bootable.
- Add any other files/folders (don't exceed about 600MB for a CD) that you want included on the "CD part" of the CD and place them (just as you did with the floppy.img file) inside the zfiles folder. It is conventional to hide the floppy.img file when the CD is accessed normally at a later stage - but this is not mandatory. Without going into the specifics, it is best to not use any very long file names and to not nest any folders too many layers deep as sub-folders of sub-folders of ... etc. This is because CD file systems do not operate like FAT32 and other file systems used on magnetic media.
- Most proprietary burning software such as Nero or EasyCD (as mentioned in the "Important Notes" inset) will allow one to compile boot CDs in a number of both simple and elaborate ways. They may also allow one to use real floppy diskettes as the templates for floppy emulation instead of floppy image files.
- Read the manuals or help-files of these proprietary programs carefully because each version seems to do it differently. For the most part it should be pretty straightforward to convert a boot floppy into a functional boot CD and this can be very useful on systems that have no floppy drive - something that has become more and more common nowadays, particularly on laptops.
 Technical Notes
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.
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.
- Bart Lagerweij's NU2 Site is full of all sorts of FREE useful material; (almost too much material!). We have found two areas of his "Bootable CD" section particularly interesting and useful: (a) the Boot CD page and (b) the PE Builder page.
- We have, over time, learned much from his pages but have found that they often require some technical know-how and are not all that easy to navigate or use. Having said that it is a fantastic source of both material and information. We have tried here to distill out some of the more essential information to allow for the easy creation of Boot CDs.
- His 'modular' floppies are a clever way of creating multiple compressed images on a floppy. Images which can be unpacked and run from RAM-drives as required. This allows for very versatile boot floppies (and thus also boot CDs) containing many more programs than usual and accessed from nice boot menus. His methods have been largely superceded by his PE Builder to which most of his effort now seem to be directed.
- The PE Builder program is used to create a "Bart PE" CD. We now have a page dedicated to helping to use the program to build the CD along with a method for installing a plug-in onto it. The plug-in described is for TinyHexer but the same principles would apply to any plug-in.