GENERAL: 
Isolinux is CD boot loader with a posibilities like: booting floppy images 
(using MEMDISK), booting CD boot sectors, booting linux 
kernels and passing parameters to kernels/initrd if needed. 
 
Legend: 
blue text - predefined names or command names and 
cannot be changed by user 
red text - user defined names
Isolinux files: 
isolinux.bin - boot loader for no-emulation boot 
memdisk - this file is used to load floppy and HDD 
images 
isolinux.cfg - configuration file 
*.txt / *.msg - text files with some commands. This files are used for making 
boot messages - splash screens 
*.lss - Isolinux graphic splash screen 
isolinux.bin 
This file is loader himself. If you are making bootable CD that uses 
Isolinux for booting, then point your CD-burning software to this file when it 
ask for boot sector. 
Memdisk 
This file is loader for floppy and HDD images. 
Memdisk is called by isolinux.bin according to options specified in isolinux.cfg. 
For a floppy image, the size of the image should be exactly one of the 
following: 
 
1,228,800 bytes - For a 1200K floppy image 
1,474,560 bytes - For a 1440K floppy image 
2,949,120 bytes - For a 2880K floppy image 
 
Any other size is assumed to be a hard disk image. 
See isolinux.cfg 
for more details on using memdisk. 
isolinux.cfg 
This is configuration file for isolinux. It is a plain text file and can 
be edited in any text editor. 
Options in isolinux.cfg  DON'T have a particular order. 
Isolinux.cfg can be in 
DOS or Linux text format. 
 
Items/commands in isolinux.cfg: 
#  - comment, use this at the begining of 
line to insert comments 
 
DEFAULT {label name or kernel options} - specifies 
what will be booted after boot timeout or if user just hits ENTER without 
specifiing boot options. 
example: 
DEFAULT myDOS - this 
will work just like you have typed myDOS at boot 
prompt, that means - it will boot anything that is specified in
label myDOS (see
label item) 
DEFAULT kernel bootsec.bin
- this will boot bootsec.bin (for example 
WindowsXP installation CD boot sector) 
 
LABEL {label name} - This is a section that 
explains boot options for {label name}. 
example 1: 
LABEL myDOS 
    kernel memdisk 
    append initrd=DOS.IMG 
This means: if user types myDOS at boot 
prompt then use memdisk (as kernel) to load
DOS.IMG (floppy image file). 
example 2: 
LABEL oldbootcd 
    kernel 
bootsec.bin 
This means: if user types oldbootcd at boot prompt 
then load CD boot sector as kernel (this can be used if you 
integrate more bootable CDs to your multiboot CD or to load any other 
no-emulation boot sector). With this method you can load BCDW, BScriptor or 
CDShell from Isolinux ( see Links section ). 
example 3: 
LABEL linux 
    kernel 
vmlinuz 
    append 
max_loop=255 initrd=initrd.gz init=linuxrc livecd_subdir=/ ... 
This means: if user types linux at boot prompt then 
load linux kernel and pass parameters from append 
section to linux kernel (used for live linux CDs). 
example 4: 
LABEL hdd 
    localboot 0x80 
This means: if user types hdd at boot prompt 
then boot from first partition of first HDD.  
Valid parameters for localboot are: 
0x80 - first partition of first HDD (C: in DOS) 
0x81 - 2nd partition of first HDD (D: in DOS) 
0x00 - first floppy drive (A: in DOS) 
....etc 
-1 - tell BIOS to boot from next device listed in 
BIOS 
example 5 : 
LABEL somethig 
    kernel memdisk 
    append 
myFolder/myDisk.img 
This is example how you can use folders. In this example isolinux will 
search for myDisk.img in subfolder of folder that 
contains isolinux.cfg (in most cases this is 
/Isolinux folder). If isolinux.cfg is in folder
/Isolinux, then myDisk.img 
should be in /Isolinux/myFolder. 
example 6: 
LABEL something 
    kernel 
/vmlinuz 
    append 
max_loop=255 initrd=/initrd.gz init=linuxrc livecd_subdir=/ ... 
This one will search for vmlinuz in a parent 
folder of folder that contains isolinux.cfg. It 
will also search for initrd.gz in parent folder ( 
"/" before vmlinuz and before initrd.gz). If isolinux.cfg 
folder is /Isolinux then files will be searched in root folder of the CD. 
example 7: 
LABEL something 
    kernel 
/livelin/vmlinuz 
    append  
max_loop=255 initrd=/livelin/initrd.gz init=linuxrc livecd_subdir=/ ... 
This one will search for vmlinuz and
initrd.gz in following way: go to the parent folder 
of folder containing isolinux.cfg  (in most 
cases this if /Isolinux folder), now go  to the subfolder
livelin and find files there. Kernel file and 
initrd file don't need to be in the same folder. 
 
TIMEOUT x - set 
timeout in 1/10 sec. If user don't type anything at boot prompt in time set by
TIMEOUT, then DEFAULT 
or ONTIMEOUT will be executed ( see
ONTIMEOUT for details). 
 
ONTIMEOUT {label name or kernel options} - same as
DEFAULT. If ONTIMEOUT 
option is set, then DEFAULT is used just if user 
hits ENTER without options at boot prompt. 
 
DISPLAY filename - 
display text (splash screen) specified with filename 
before boot prompt (at isolinux start). Splash screen is text file that can 
contain some commands. Extension of splash screen files can be ANY (.txt .msg 
.xyz...) except of:  .0 .bin .bs .bss .c32 .cbt .com .img  
 
F1  filename - 
display text (same kind of text files as for DISPLAY) 
if user press F1. Same for F2 
F3 ... F9 F0. 
 
SAY message - print 
the message on the screen 
 
PROMPT x - If
x is 0, display the boot prompt only if the Shift 
or Alt key is pressed, or Caps Lock or Scroll lock is set (this is the default). 
If x is 1, always display the boot prompt. My 
advice: - use PROMPT 1. 
 
Notes: 
-command names are case insensitive, but label names are case sensitive. 
-isolinux.bin will search for isolinux.cfg file in following folders on CD: / 
(root of CD), /boot, /isolinux 
 
Example of isolinux.cfg: 
 
# default to boot from hard drive 
default 0 
# let the user know the basic options 
display WELCOME.TXT 
prompt 1 
# various options are available for booting 
 
# hd 
label 0 
localboot 0x80 
 
# floppy 
label a 
localboot 0x00 
 
# cancel and try next boot device 
label q 
localboot -1 
 
# MY BOOT 
label mydos 
kernel memdisk 
append initrd=BOBBY71p.IMG 
 
# MY BOOT2 
label mydos2 
kernel memdisk 
append initrd=BOBBY71s.IMG 
 
# part image 
label 11 
kernel partimg/vmlinuz 
append initrd=partimg/initrd.img load_ramdisk=1 prompt_ramdisk=0 rw 
root=/dev/ram 
  
# movix vesa 
label VE 
kernel kernel/vmlinuz 
append initrd=initrd.gz load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=62000 rw 
root=/dev/ram0 LABEL=vesa video=vesa:off 
 
timeout 200 
F1 DOS.TXT 
F2 MOVIX2.txt 
F3 UTIL.TXT 
F4 LINUX.TXT 
F5 MX2HELP.TXT 
F6 TRBLST.TXT 
F7 MPHELP.TXT 
F8 PARTIMG.TXT 
F9 WELCOME.TXT 
F0 WELCOME.TXT 
   |