I have released SYSLINUX 2.04, mostly to address the 2.03 MEMDISK bug.
At the same time I'm getting the PXELINUX blksize and SYSLINUX installer
changes out there, which hopefully is a good thing.
New release mostly to address the MEMDISK corruption issue.
Changes in 2.04:
* ALL: Reclaim even more low memory by observing that
comboot_seg == real_mode_seg is perfectly fine, and by the
fact that the 1000h segment managed to get unused in all
derivatives...
* PXELINUX: Attempt to negotiate full Ethernet-sized blocks
(1468 bytes) using the blksize option.
* SYSLINUX: Resurrect the old no-mtools version of the
installer, although as a root-only tool. Some distributors
have indicated that they need a small standalone installer.
* MEMDISK: Fix a memory offset computation error when
installing compressed disks which generally would cause
1 MB of memory to be wasted.
* MEMDISK: Fix installing the E820 memory map. Calling
INT 15h AX=0E820h with MEMDISK 2.03 loaded would give a
completely corrupt memory map.
* SYSLINUX: Make libsyslinux a dynamic library, so that it can
be updated separately from client programs. The whole idea,
after all, is to enable alternate programs to become
syslinux installers.
* Include an rpm spec file in the distribution, so rpmbuild
-ta works.
Changes in 2.03:
* Actually support comment lines in the configuration file.
* PXELINUX: Try to resolve some problems with stack switches.
* PXELINUX: Handle PXE stacks with broken routing.
With these workarounds, the remote install PXE boot floppy
(rbfg.exe) from Argon Technologies should work correctly.
* Fix problems with Perl scripts in UTF-8 locales.
* You probably need NASM 0.98.34 or later to compile this
version. 0.98.36 is recommended.
* MEMDISK: Now supports gzip compressed images.
Begin3
Title: syslinux
Version: 2.04
Entered-date: 2003-04-16
Description: SYSLINUX is a collection of boot loaders for the Linux
operating system which operates off MS-DOS floppies,
network servers using PXE firmware, or from CD-ROMs.
It is intended to simplify first-time installation of
Linux, rescue disks, and other uses for boot floppies.
A SYSLINUX floppy can be manipulated using standard
MS-DOS (or any other OS that can access an MS-DOS
filesystem) tools once it has been created; and
requires only a very small DOS or Linux program to
create in the first place. It also includes MEMDISK,
a tool to boot legacy operating systems from
nontraditional media like PXE or CD-ROM.
Keywords: syslinux pxelinux msdos boot loader floppy install
network pxe iso9660 cdfs memdisk
Author: hpa at zytor.com (H. Peter Anvin)
Maintained-by: hpa at zytor.com (H. Peter Anvin)
Primary-site: ftp.kernel.org /pub/linux/utils/boot/syslinux
387735 syslinux-2.04.tar.gz
473179 syslinux-2.04.zip
Alternate-site: ibiblio.org /pub/Linux/system/boot/loaders
Platforms: DOS or Linux to install. Linux, perl and nasm 0.98.35
or later required to build from source.
Copying-policy: GPL
End
I am currently in the process of writing a small COM32 code. We have a ISOLinux based CD, which boots into DOS/WinXP/Linux and does a whole lot of useful things including installing (multiboot) OSes with software, troubleshooting.... More details available at http://people.cs.uchicago.edu/~gmurali/gui/index.html The process of installing OSes (especially multiple OSes), require one to boot in some particular order, e.g. Boot into DOS off the CD, and then off the hard disk,.... I am currently trying to automate that process. To that end I am writing a COM32 code, which ineffect reads a particular sector from the hard disk (sector 6-9 in the 0th cylinder which AFAIK is not used by any OS to do anything), interprets that to be a "stack" of names of "kernels" to boot from, pops the top one off the stack, writes the new "stack" to the same sectors, and then asks ISOLinux to boot using the correct kernel / from the hard disk. If no stack is found, then it runs a specific kernel. In our case, the specific kernel boots into linux and asks the user the combination of OSes, which needs to be installed, and based on the user selection writes the appropriate stack to the hard disk, so that the COM32 code can find it the next time it runs. I assume that my COM32 code, can use the standard BIOS calls to read and write to the hard disk. Since the COMBOOT API, does not seem to have an API to boot off a specific hard disk partition, I am looking for advice on how to do that. And, any other gotchas I need to be aware of. - Murali