$Id$ [This documentation is rather crufty at the moment.] MEMDISK is meant to allow booting legacy operating systems via PXE, and as a workaround for BIOSes where ISOLINUX image support doesn't work. MEMDISK simulates a disk by claiming a chunk of high memory for the disk and a (very small - 2K typical) chunk of low (DOS) memory for the driver itself, then hooking the INT 13h (disk driver) and INT 15h (memory query) BIOS interrupts. To use it, type on the SYSLINUX command line: memdisk initrd=diskimg.img ... where diskimg.img is the disk image you want to boot from. [Obviously, the memdisk binary as well as your disk image file need to be present in the boot image directory.] ... or add to your syslinux.cfg/pxelinux.cfg/isolinux.cfg something like: label dos kernel memdisk append initrd=dosboot.img Note the following: a) The disk image should *not* be compressed. b) If the disk image is one of the following sizes, it's assumed to be a floppy image: 368,640 bytes - 360K floppy 737,280 bytes - 720K floppy 1,222,800 bytes - 1200K floppy 1,474,560 bytes - 1440K floppy 1,720,320 bytes - 1680K floppy (common extended format) 1,763,328 bytes - 1722K floppy (common extended format) 2,949,120 bytes - 2880K floppy For any other size, the image is assumed to be a hard disk image, and should typically have an MBR and a partition table. The disk C/H/S geometry is determined by examining the partition table, so the entire image should be partitioned for proper operation. You can also specify the geometry manually with the following command line options (currently untested): c= Specify number of cylinders (max 1024[*]) h= Specify number of heads (max 256[*]) s= Specify number of sectors (max 63) floppy The image is a floppy image harddisk The image is a hard disk image [*] MS-DOS only allows max 255 heads, and only allows 255 cylinders on floppy disks. If you want to recompile it from sources, you will need to make sure that you have a fairly recent binutils installed. I have been using the binutils-2.11.90.0.8-9 RPM from RedHat. Some interesting things to note: If you're using MEMDISK to boot DOS from a CD-ROM (using ISOLINUX), you might find the generic El Torito CD-ROM driver by Gary Tong and Bart Lagerweij useful: http://www.nu2.nu/eltorito/ Similarly, if you're booting DOS over the network using PXELINUX, you can use the "keeppxe" option and use the generic PXE (UNDI) NDIS network driver, which is part of the PROBOOT.EXE distribution from Intel: http://www.intel.com/support/network/adapter/1000/software.htm