Clean checkin of the 6.03 code

BUG: 32495852
Change-Id: I5038a3bb41e217380c1188463daec07b1e9b6b48
diff --git a/NEWS b/NEWS
new file mode 100644
index 0000000..d1a5b2c
--- /dev/null
+++ b/NEWS
@@ -0,0 +1,1745 @@
+Starting with 1.47, changes marked with SYSLINUX, PXELINUX, ISOLINUX
+or EXTLINUX apply to that specific program only; other changes apply
+to all derivatives.
+
+Changes in 6.03:
+	* chain: Fix chainloading on 6.02 (Raphael S. Carvalho).
+	* core: Do not leak the __lowmem and __bss16 macros to modules;
+	  hide them so modules will not use them.
+	* load_linux: Do not use size heuristic for non-relocatable
+	  kernels, for zImage kernels and for non-Linux kernels.
+	* PXELINUX: Fix the SENDCOOKIES feature for HTTP
+	  (Russel Santillanes).
+	* gnu-efi: Add gnu-efi as a submodule.
+	* ANSI: Support color tables with more than 256 entries
+	  (James Buren).
+	* EFI: Fix displayed version; add DATE (Gene Cumm)
+	* PXELINUX, EFI: Fix bad read of file size over TFTP on EFI64
+	  (Sylvain Gault).
+	* Fix hand over to kernel:
+	  "Booting kernel failed: Invalid argument" error.
+	* ISOLINUX: EDX, LBA values higher than 65535; work around for
+	  buggy BIOS, where the system would hang, would reboot, or
+	  would show a "Disk error 01, AX=42" message.
+	* core/legacynet: Enable dot quad resolution (Gene Cumm).
+	* diag/geodsp improvements (Gene Cumm).
+	* DOS: Fix syslinux.com DOS-based installer.
+	* Improve gcc 4.3.0 compatibility.
+	* syslxint: fix compilation on non-x86 architectures.
+	* localboot: Fix "localboot 0x80" and similar cases.
+	* Add memset() calls prior to any intcall() and other mem fixes;
+	  specially relevant for older hardware and/or buggy BIOS.
+	* poweroff.c32: Fixes (Gene Cumm).
+	* HDT: Fix memory leak in CLI (Felipe Pena).
+	* ACPI: Remove memset of buffer; it makes things clearer but
+	  also prevents some compilation warnings (Erwan Velu).
+	* Add manpages for isohybrid, memdiskfind
+	  (Peter Jones, Gene Cumm).
+	* ISOLINUX: Experimental Rock Ridge support (Thomas Schmitt).
+	* comapi: Remove the comapi interfaces.
+	* EFI: Fixes on PE files and OVMF compatibility
+	  (Sylvain Gault, Gene Cumm).
+	* EFI: Updates and fixes for gnu-efi sub-module
+	  (Sylvain Gault, Gene Cumm).
+	* BIOS: Fix low memory check.
+	* Filesystem UUID to SYSAPPEND bit 0x40000 for FAT and ext2
+	  (Serj Kalichev).
+	* Makefiles: Export the firmware type as a cpp variable.
+	  Additional improvements. Fix "make spotless".
+	* core, BIOS: Move __syslinux_shuffler_size to assembly.
+	  Actually get the shuffler size sanely. Fix booting recent
+	  Syslinux versions on certain hardware and on certain
+	  virtualization software (e.g. QEMU 0.11.1, VirtualBox 4.1.x).
+	* lua: Upgrade to v.5.2.3 (Ferenc Wágner) and additional fixes.
+	* chainload: Fixes to chain.c32 and pxechn.c32.
+	* NTFS: Make byte_shift a constant.
+	* NTFS: Correct parsing of file runs (Andy Alex).
+	* core, BIOS: Correct detection of EDD (Andy Alex).
+	* core: Avoid initializing the cache more than once
+	  (Raphael S. Carvalho).
+	* NTFS: Handle fragmented $MFT file (Andy Alex).
+	* BIOS: Use int 0x16, ah=0x02 to probe for shift flags. Attempt
+	  workaround for USB keyboards not responding at boot time.
+	* kbd: Getting the keyboard shift state is now a firmware method.
+	* kbd: Fix force-prompt features.
+	* BTRFS: Fix booting on BTRFS.
+	* cache, btrfs: Provide a general cached read routine.
+	* NTFS: Correct file->offset usage in ntfs_readdir (Andy Alex).
+	* New support for UFS/FFS (UFS1/2) (Raphael S. Carvalho).
+	* adv: Remove double definition;
+	  it should fix uses of the ADV, including "--once".
+	* memdump: Remove old obsolete COM16 binary.
+	* isohybrid: Numerous fixes (Thomas Schmitt).
+	* chain.c32: Add an adjustable "strict={0,1,2}" flag, improve
+	  error reporting (Michal Soltys.)
+	* lpxelinux.0: Workaround for various buggy BIOSes (Gene
+	  Cumm.)
+	* PXE: Fix a stack-smashing bug which broke a large number of
+	  systems.
+
+Changes in 6.02:
+	* efi64: Add support for booting 32-bit kernels.
+	* efi: Use the EFI handover protocol when booting kernels if
+	  available.
+	* Fix various make targets that became broken when switching to
+	  per-firmware object directories, including 'make install' and
+	  'make netinstall'.
+	* efi: Improve handling of packet loss in UDP stack.
+	* tests: Introduce a new regression test framework designed to
+	  ensure bugs are not reintroduced once fixed.
+	* efi: Implement localboot support.
+
+Changes in 6.01:
+	* efi: Mark some symbols as __export otherwise libcom32.c32 and
+	  vesamenu.c32 will refuse to load.
+	* bios: Wire up the bios kernel loader. It was impossible to
+	  load a kernel from bios in 6.00.
+	* efi: Fix 'make installer'. There are no EFI installers so
+	  don't try and build them as we run into build errors.
+	* efi: Reuse the initial TFTP client port in subsequent
+	  transfers otherwise the server will send an error packet.
+	* efi: Some firmware will not set a default TTL value in IP
+	  packets - we must explicitly set it ourselves otherwise a
+	  value of zero may be used.
+	* bios, font: Fix a font regression affecting some VirtualBox
+	  users.
+
+Changes in 6.00:
+	* Add support for booting from EFI.
+	* EFI TCP/IP support. This allows the EFI backend to hook into
+	  the generic TFTP, HTTP and FTP functionality.
+
+Changes in 5.11:
+	* Dynamic debug support: Add new module, debug.c32, that allows
+	  debug code to be dynamically enabled and disabled at runtime.
+
+Changes in 5.10:
+	* PXELINUX: An entirely new network implementation based on
+	  the lwIP embedded TCP/IP stack.  As a result, plain PXELINUX
+	  can now support HTTP and FTP without gPXE/iPXE.  ls/readdir
+	  functionality is supported over HTTP with an indexing
+	  webserver, or over FTP with most common FTP servers. For the
+	  new network stack use lpxelinux.0. For the legacy stack use
+	  pxelinux.0.
+	* Rename the "ipappend" option to "sysappend" ("ipappend" is
+	  still accepted as an alias) and make it available for all
+	  derivatives.  Add additional strings derived from the system
+	  DMI/SMBIOS information if available.
+	* "sysappend" strings are also sent as http cookies, with the
+	  prefix _Syslinux_ added, on all http transfers.  This can be
+	  overridden with the SENDCOOKIES configuration file command.
+	* poweroff.c32: A new module to power off a system via APM. It
+	  replaces the poweroff COMBOOT module (Sebastian Herbszt).
+	* PXELINUX: Fix booting with DHCP options 209 and 210 which was
+	  broken in 5.00.
+	* Handle loading kernel images with no protected mode code. A
+	  legitimate kernel image can consist solely of real-mode code.
+	  The support for booting such images was broken in 5.00 (Josh Triplett).
+	* Fix a regression in the .psf font file loader introduced
+	  in 5.00.
+
+Changes in 5.01:
+	* txt/: A new AsciiDoc documentation set (work-in-progress)
+	  (Gene Cumm).
+	* core: Fix a bug in the realloc() implementation that caused
+	  machines to appear to run out of free memory.
+	* ldlinux: Fix multiple buffer overflows in cmdline parsing
+	  code that resulted in files failing to run and cmdlines
+	  being truncated.
+	* core: Fix debug build by tagging __bad_SEG() with __export.
+	* com32: Restrict library filenames to 8.3 format.
+	* EXTLINUX: Fix installation and subdirectory patching.
+	* ISOLINUX: Fix booting isohybrid images that are over 32K.
+	* com32: Strip modules to reduce their size.
+	* XFS: Implement directory block cache and fix
+          shortform-directory lookup (Paulo Alcantara).
+
+Changes in 5.00:
+	* com32: Switched from the COM32 object format to ELF as it is
+	  a much more powerful format that allows undefined symbols to
+	  be resolved at runtime and dynamic loading of module
+	  dependencies, which means modules now become shared object
+	  files instead of statically linked binaries - reducing both
+	  disk space and runtime memory consumption.
+	* core: Split non-core functionality into ldlinux.c32, which
+	  is an ELF module loaded by the core that contains everything
+	  the core doesn't require to boot the system, e.g. config
+	  parser, command-line interface, etc.
+	* Replaced __intcall() calls with direct function calls now
+	  that we can resolve undefined symbols at runtime, thanks to
+	  the ELF object support. Now that we no longer need to go
+	  through the 16-bit interrupt mechanism we can make full use
+	  of the 32-bit execution environment. This change required
+	  reimplementing lots of the 16-bit assembly code from core/
+	  in C.
+	* com32: __com32.cs_bounce is gone now we always run in a
+	  32-bit environment once we execute ldlinux.c32.
+	* ldlinux: A new "PATH" directive was added to the ldlinux.c32
+	  config parser that specifies a colon-separated list of
+	  directories to search when attempting to load modules.
+	* ALL: Delete all references to/code for 16-bit COMBOOT files.
+	  COMBOOT files (.cbt and .com) are no longer supported under
+	  Syslinux.
+
+Changes in 4.07:
+	* EXTLINUX: fix crash caused by dereferencing garbage pointer.
+	* Plug memory leak in searchdir which eventually leads to an
+	  observable hang (Shao Miller).
+	* ISOLINUX: fix bug triggered by isohybrid images larger than
+	  32K which results in an invalid image checksum error.
+	* menugen: make it Py3k compatible (Paulo Alcantara).
+
+Changes in 4.06:
+	* Support for NTFS, by Paulo Alcantara.
+	* EXTLINUX: more robust device detection, allow user to override.
+	* kontron_wdt.c32: Add a new module to enable the hardware
+	  watchdog of some Kontron boards. It allows enabling the watchdog
+	  and then booting a given image.
+	* HDT updated, and now can display images regarding some detection
+	  steps. Add postexec command to run a particular entry after
+	  HDT's execution, add silent option and various fixes.
+	* ifcpu.c32: Detect hypervisor presence.
+	* lua.c32: Add dhcp support and support for native Syslinux
+	  functions syslinux_config(), syslinux_ipappend_strings() and
+	  syslinux_reboot().
+	* isohybrid: Workaround for various EFI systems.
+	* pxechn.c32, a PXE NBP chainloader.  More versatile alternative
+	  to pxechain.com and resolves the PXELINUX -> WDS issue with
+	  Microsoft Windows Server 2008R2 (Gene Cumm).
+	* btrfs: Fix booting off of a subvolume.
+	* com32: Add device tree support.
+	* SYSLINUX: Fix relative paths for VFAT. The CONFIG and APPEND
+	  directives now support entirely relative paths.
+
+Changes in 4.05:
+	* HDT updated, and now supports uploading data to a TFTP
+	  server.
+	* ISOLINUX: remove the .img file support; it has been broken
+	  on virtually all systems since the beginning, and has been
+	  totally broken since 4.00 at least.  Use MEMDISK instead.
+	* chain.c32: Support chaining ReactOS' FreeLdr (Shao Miller)
+	* isohybrid: -m option to add support for Mac EFI booting.
+        * ifmemdsk.c32: Choose boot option based on presence of
+	  MEMDISK.
+	* Remove bogus distributed mk-lba-img binary.
+	* The Syslinux project has a new, cool logo by Abi
+	  "ixxvil" Rasheed (doc/logo/*).
+
+Changes in 4.04:
+	* PXELINUX: Fix handling of unqualified DNS names.
+	* PXELINUX: Fix timer bug when PXELINUX might be unloaded
+	  (Gene Cumm).
+	* core/writedec.inc: Fix duplicate declaration and overflow
+	  (Gene Cumm).
+	* GCC 4.5 fixes.
+	* sample directory: Fix Makefile include (Gene Cumm).
+	* ver.com: New universal DOS/COMBOOT application to display
+	  version information (includes DRMK) (Gene Cumm).
+	* rosh.c32: updated; Using getopt() for internal commands to aid
+	  parsing options; Fix bugs in ls; add warm reboot and echo
+	  (Gene Cumm).
+	* com32: fix a file descriptor leak.
+	* gfxboot.c32: handle TEXT..ENDTEXT; error out on no LABELs
+	  found (Sebastian Herbszt).
+	* Fix booting on non-partitioned devices.
+	* MBR, isohybrid: Workaround for a BIOS issue on Acer
+	  Travelmate and possibly other machines.
+        * COM32: Adding ACPI parsing libary
+        * HDT: Release 0.4.1 to support ACPI parsing, 
+          improved mutli-core/cpu reporting 
+	* LUA: Updating to 5.1.4-2
+	* SYSLINUX: core/diskstart.inc: Reset DS after checksum in case
+	  it isn't 0 (Gene Cumm).
+	* win64: Script update for additional mingw compiler names
+	  (Gene Cumm).
+	* diag: New directory for diagnostic-related tools.  Add a
+	  handoff MBR/VBR and geometry display images (Gene Cumm).
+	* MEMDISK: use "mem=" parameter to mark available memory above
+	  this point as reserved (core already does alignment) (Gene Cumm).
+	* MEMDISK: Additional disk probe checks and debug output
+	  (Shao Miller, Gene Cumm).
+	* gpxe: add gpxelinuxk.0, based off of undionly.kpxe + new
+	  script (Gene Cumm).
+	* isohybrid: install the isohdpfx*.bin/isohdppx*.bin files to
+	  make isohybrid images in one step with GNU xorriso.
+	* PXELINUX: disable a hack that would make localboot work on
+	  some machines, but break just about as many.  Some machines
+	  which worked with "localboot 0" in previous versions may
+	  need "localboot -1" in this one.  If you have a machine
+	  which requires "localboot -1", a copy of the dmidecode
+	  or sysdump output would be appreciated.
+	* Include a set of diagnostics by Gene Cumm.
+	* Fixes for gcc 4.6 and binutils 2.21.51.
+	* chain.c32: Allow "uuid" as a synonym to "guid".
+	* Handle directory names starting with .. for vfat and
+	  iso9660.
+	* New MENU HIDDENKEY command to provide a one-keystroke way to
+	  activate a boot option from a hidden menu intro screen.
+
+Changes in 4.03:
+	* Don't hang if no configuration file is found.
+	* Better support for booting from MBRs which don't pass
+	  handover information.
+	* EXTLINUX: Try to be smarter about finding the partition
+	  offset.
+	* chain.c32: support chainloading Dell Real Mode Kernel (Gene
+	  Cumm).
+	* chain.c32: fix booting in CHS mode.
+	* rosh.c32 updated (Gene Cumm).
+	* Fix the -s option to the syslinux/extlinux installer (Arwin
+	  Vosselman).
+	* isohybrid: fix padding of large images (PJ Pandit).
+
+Changes in 4.02:
+	* SYSLINUX: correctly handle the case where the -d option is
+	  specified with a non-absolute path, i.e. "syslinux -d
+	  syslinux" instead of "syslinux -d /syslinux".
+	* ISOLINUX: recognize the directory names /boot/syslinux and
+	  /syslinux, and the filename syslinux.cfg in addition to the
+	  isolinux-specific names.  Thus, "syslinux.cfg" is now a
+	  generic name, whereas "isolinux.cfg" or "extlinux.conf" is
+	  specific to different derivative.
+	* chain.c32: support setting alternate config filename for
+	  stage2 of GRUB Legacy (Gert Hulselmans).
+	* whichsys.c32: execute specific command, based on Syslinux
+	  bootloader variant (Gert Hulselmans).
+	* lua.c32: a lot of new bindings added to the "syslinux"
+	  namespace: VESA, PCI, DMI, kernel loading (Marcel Ritter).
+	* btrfs: print a comprehensive error message if compressed or
+	  encrypted files are encountered (neither is currently
+	  supported.)
+	* SYSLINUX: mtools installer: honor TMPDIR, error out on disk
+	  full.
+	* Handle fallbacks from EDD to CHS, to deal with systems which
+	  announce EDD support but don't actually have it.
+	* SYSLINUX: the mtools, DOS and win32 installers now use the new
+	  command line options.
+	* PXELINUX: fix the use of IP addresses in TFTP :: or tftp://
+	  host syntax.
+	* SYSLINUX: experimental Win64 installer (syslinux64.exe).
+
+Changes in 4.01:
+	* ISOLINUX: fix initialization on systems which don't zero
+	  low memory.
+	* SYSLINUX/EXTLINUX: fix handing of disk read retries in
+	  EDD mode.
+	* ISOLINUX: change the initialization sequence to avoid
+	  problems with certain (old) BIOSes.  Special thanks to
+	  Helmut Hullen for invaluable debugging support.
+	* ifplop.c32: new module which detects if the PLoP Boot Loader
+	  already has booted a CDROM or USB drive (Gert Hulselmans).
+	* Correct a severe memory overwrite bug, triggered primarily
+	  when selecting a very long command line in the menu system.
+	* lua.c32: Lua script interpreter, currently experimental
+	  (Alexey Zaytsev, Marcel Ritter, Geert Stappers).
+	* PXELINUX: new option IPAPPEND 4 to append the system UUID to
+	  the kernel command line.
+	* PXELINUX: display BOOTIF and SYSUUID at startup time, and
+	  when Ctrl-N is pressed on the command line.
+
+Changes in 4.00:
+	* Major code base changes; all filesystem rewritten in C.
+	  This work was done primarily by Liu Aleaxander (Yuanhan Liu).
+	* EXTLINUX: btrfs and ext4 support.  btrfs support was done by
+	  Alek Du of Intel.
+	* EXTLINUX is no longer a separate derivative; extlinux and
+	  syslinux both install the same loader (ldlinux.sys); for the
+	  Linux-based installers the extlinux binary is used for a
+	  mounted filesystem; the syslinux binary for an unmounted
+	  filesystem.
+	* When loading a new configuration file with the CONFIG
+	  command, one can now also specify a new current directory
+	  with an APPEND statement.
+	* Full ADV support for Syslinux, to boot-once and MENU SAVE
+	  works.
+	* Full support of GPT-partitioned disks, including disks
+	  and/or parititions larger than 2 TiB (if supported by BIOS.)
+	* The GPT handover protocol adjusted to the current T13
+	  committee draft; see doc/gpt.txt.
+	* HDT: code cleanup, small bugfixes
+	* The "linux" syslinux installer (syslinux-nomtools) now has a
+	  command-line syntax closer to the extlinux installer.  The
+	  mtools, dos and win32 installers will get this new syntax
+	  eventually, but it is not implemented yet.
+	* chain.c32: support booting GPT partitions by index, GUID, label.
+	* chain.c32: support booting the Syslinux partition with "fs".
+	* chain.c32: implement gpt.txt hand-over protocol.
+	* chain.c32: support for chainloading Grub stage 2.
+	* PXELINUX: TFTP URL syntax (tftp://) supported even when not
+	  running gPXE/gpxelinux.
+	* New ls.c32 module to display the contents of the disk from
+	  the command line, and pwd.c32 to display the current
+	  directory.
+	* rosh.c32 (read only shell) updated and hopefully usable.
+	* PXELINUX: Support "localboot -1", just like the other
+	  derivatives.
+	* gfxboot.com removed in favor of gfxboot.c32.
+	* New MENU HELP statement to display fullscreen help text as a
+	  result of a menu selection.
+	* memdiskfind utility that can be used with the phram driver
+	  in the Linux kernel to mount a memdisk.
+        * ifcpu.c32: Adding usage when no parameters are given, 
+          adding PAE support.
+	* ifcpu.c32, ifcpu64.c32: handle more than one argument per
+	  target.
+	* isohybrid: C version which does not require Perl.
+	* New command MENU IMMEDIATE to permit hotkeys to activate
+	  immediately without needing Enter.
+	* mdiskchk.com supports a --no-sequential (or -n) option to
+	  suppress the classic all-drive-probing heuristic.  Useful
+	  on BIOSes who crash/hang when certain drive numbers are
+	  probed.
+	* ElTorito.Sys DOS driver now scans drive numbers upwards
+	  instead of downwards, in order to avoid a fairly common
+	  bug on some BIOSes where probing drive 0xFF causes a
+	  failure.
+	* NASM 2.03 or later required to build.  2.07 or later
+          recommended.
+
+Changes in 3.86:
+	* chain.c32: fix chainloading the MBR of a hard disk (broken
+	  in 3.85).
+	* mboot.c32: report the boot loader name in the information
+	  structure.
+	* com32: set argv[0] in a com32 module.
+	* core: add a workaround for a bug in Xen HVM older than
+	  version 3.3: disable halt on those platforms.
+	* Fix problems where certain operations in com32 modules would
+	  cause the core to believe the system was idle.
+	* MEMDISK: fix MBR detection when used with a DOSEMU header or
+	  an offset.
+	* MEMDISK: generate the mBFT checksum correctly.
+
+Changes in 3.85:
+	* gPXELINUX: updated to gPXE 1.0.0.  gPXELINUX can now do NBP
+	  chainloading, and does not require a second DHCP.
+	* vesamenu.c32: unbreak the default "grey hole" background.
+	* We no longer have a built-in default of "linux auto".
+	  Instead, if no DEFAULT or UI statement is found, or the
+	  configuration file is missing entirely, we drop to the boot:
+	  prompt with an error message (if NOESCAPE is set, we stop
+	  with a "boot failed" message; this is also the case for
+	  PXELINUX if the configuration file is not found.)
+	* chain.c32: support chainloading Grub4DOS; patch by Gert
+	  Hulselmans.
+	* New tool: sysdump.c32, can be used to produce system
+	  information for debugging via tftp or ymodem (serial port).
+	* "vga=current" on the Linux command line is now supported.
+	* chain.c32: support for Windows Recovery Console, via the
+	  "cmldr=" option.
+	* chain.c32: should now support loading NTLDR from different
+	  type media than loaded from.
+	* chain.c32: support chainloading to a FAT/NTFS partition with
+	  invalid "hidden sectors" via the "sethidden" option.
+	* memdisk: fix the mBFT ACPI table.
+	* vesamenu.c32: if the image is smaller than the screen, tile
+	  it across the whole screen.
+	* mkdiskimage: -s option for producing a sparse image.
+	* vesamenu.c32: support arbitrary resolution setting (beyond
+	  BIOS support) on some Intel-based video chipsets.  This code
+	  is a modified version of the "915resolution" tool by
+	  Steve Tomljenovic; your mileage might vary.
+	  
+Changes in 3.84:
+	* SYSLINUX: make the DOS installer work for MS-DOS 7.x/8.x
+	  (Win9x/ME) again.
+	* HDT: updated to version 0.3.6 (numerous changes.)
+	* mboot.c32: now supports video mode setting if requested by
+	  the image.
+	* MEMDISK: Fix floppy images of PC-DOS.
+	* MEMDISK: Add support for emulation of CD-ROM images; patch
+	  by Shao Miller.
+	* MEMDISK: Comply with the Win9x "safe hook" standard,
+	  allowing a protected-mode driver.
+	* MEMDISK: New "mBFT" ACPI table, by analogy with the iSCSI
+	  iBFT table.  This allows detection from a protected-mode
+	  operating system without EDD support.
+	* 32-bit version of the gfxboot loader (gfxboot.c32), so far
+	  experimental.  This will replace gfxboot.com in the future.
+	* vesamenu.c32: new MENU RESOLUTION directive to set a screen
+	  resolution other than 640x480.
+	* chain.c32: add support for loading isolinux.bin.
+	* chain.c32: make sure to always return to text mode.
+	* eltorito.sys: DOS driver for generic CD-ROMs; by Gary Tong
+	  and Bart Lagerweij.
+
+Changes in 3.83:
+	* PXELINUX: clear memory before handing over to a chainloaded
+	  NBP.  This may help avoid a bug in Windows RIS.
+	* PXELINUX: fix localboot after NBP chainloading on certain
+	  BIOSes (including ASUS A8N-E, but possibly others.)
+	* chain.c32: support chainloaded bootloaders on ISOLINUX.
+	* PXELINUX: allow filenames up to 251 characters.
+	* MEMDISK: fix problems booting from USB on Thinkpads, and
+	  possibly other machines or hardware combinations.
+	* isohybrid: fix the -id option.
+	* HDT: updated to version 0.3.4.
+	* MEMDISK: the stack size is now configurable, with the stack=
+	  option.
+	* Simple menu: fix Ctrl-W (word erase) in command-line edit.
+	* Simple menu: fix crash on some platforms.
+	* Gfxboot: fixes to the configuration file parsing.
+	* PXELINUX: add a tool to override specific DHCP options via
+	  values hardcoded in the pxelinux.0 file.  These hardcoded
+	  values can be either "before DHCP" (defaults if DHCP do not
+	  provide values), or "after DHCP" (overrides DHCP).  The tool
+	  pxelinux-options can be used to set these options.  This
+	  feature does not apply to gpxelinux.0; when used with gPXE
+	  this is better handled by modifying the embedded script.
+
+Changes in 3.82:
+	* isohybrid: fix the -partok logic for loading from a partition.
+	* ISOLINUX: deal with systems which return from INT 13h with
+	  interrupts disabled.
+	* Do not invoke the idle handler during large file loads.
+	* Simple menu: make ONTIMEOUT work with MENU HIDDEN.
+	* PXELINUX: handle TFTP servers which have extra NULs at the
+	  end of an OACK packet.
+
+Changes in 3.81:
+	* Shuffler: fix bug in real-mode entry.  This affected a
+	  number of modules, probably in relatively unimportant ways,
+	  but it completely broke linux.c32.
+	* Improved performance.
+	* Attempt to halt the processor while idle.  This can cause
+	  bad reponsiveness when using a serial console especially for
+	  automated input; if that ends up being a problem, use the
+	  new "NOHALT 1" configuration command.
+	* linux.c32 now suppresses all messages if the "quiet" flag is
+	  specified.
+	* isohybrid: add a variety of options, and a help message.
+	* ISOLINUX: fix booting in hybrid mode when CBIOS is used.
+	  This unfortunately means that the isohybrid handoff protocol
+	  has changed, so the isohybrid utility must version-match
+	  isolinux.bin.
+	* Drop support for ACPI 3 extended memory flags.
+	* Menu system: don't set the autocr flag on the serial
+	  console.
+	* altmbr: fix handling of logical partitions.
+	* altmbr: cap at 439 bytes so the partition select byte isn't
+	  part of the file.
+
+Changes in 3.80:
+	* New shuffler mechanism and API.
+	* Rewritten mboot.c32 module.
+	* The syslinux_boot_linux() function has been simplified.
+	* Don't hang trying to boot a "menu quit" label from the CLI.
+	* Fix problem with boot-once "sticking" on some BIOSes.
+	* isohybrid: fix problem with images over 2 GB in size.
+	* APM poweroff module (poweroff.com) by Sebastian Herbszt.
+	* ISOLINUX: fix the handling of large directories.  Bug found
+	  and fixed by Steffen Winterfeldt.
+
+Changes in 3.75:
+	* PXELINUX: fix the "keeppxe" option, which was broken in
+	  3.74.
+	* MEMDISK: correct the extraction of geometry information from
+	  the MBR of a hard disk image, again broken in 3.74.
+	* extlinux(1) man page from Brian Pellin.
+	* Simple menu: MENU SAVE is now controllable on a menu-by-menu
+	  or entry-by-entry basis.
+	* gPXELINUX: fix interrupt-disabling bug.
+	* HDT: fix lockup on machines with certain PCI configurations.
+
+Changes in 3.74:
+	* New UI directive, which allows a more natural way to specify
+	  a menu system (or not.)  With the UI directive specifying
+	  the menu system, the DEFAULT directive can be used to select
+	  the default entry inside the menus.
+	* kbdmap.c32: new module to load a new keyboard map
+	  dynamically.
+	* isohybrid: workaround bug in some versions of binutils.
+	* Fix issue with the placement of the initrd on some machines.
+	* ifcpu64: fix handling of less than three arguments.
+	* Fix bug in the shuffle library when dealing with a very
+	  large number of fragments.
+	* Documentation fixes by Vicente Jimenez Aguilar.
+	* gPXE updated to version 0.9.7.
+	* hdt.c32: Hardware Detection Tool, an interactive hardware
+	  analyzer module by Erwan Velu.
+	* MEMDISK: enable automatic determination of the disk geometry
+	  for a large floppy disk image if (and only if) it is
+	  formatted with a FAT filesystem.
+	* SYSLINUX: fix the handling of .bss files on FAT12/16.
+	* Suppress the Loading ... message if "quiet" is specified on
+	  the kernel command line.
+	* Fix the use of "CONSOLE 0" with menu.c32.
+	* Allow COM32 modules to be aware of all memory even in the
+	  presence of a memory hole.  The "linux.c32" module can be
+	  used to load a kernel (or memdisk) plus large initrd on
+	  such a system.
+	* MBR: produce alternate MBR variants which force the drive
+	  number to hd0 (_f variants), or force the drive number to
+	  hd0 if the Ctrl key is pressed (_c variants.)  Furthermore,
+	  add an MBR variant (altmbr*.bin) which ignores the active
+	  flag and instead boots the partition number specified in the
+	  byte at offset 439 decimal.
+	* Add IPAPPEND strings to com32 modules, especially needed for
+	  linux.c32.
+	* New MENU SAVE directive which saves the latest menu
+	  selection until the next boot.  Currently only implemented for
+	  EXTLINUX.
+	* gfxboot.com: *experimental* interface module to Steffen
+	  Winterfeldt's "gfxboot" graphical front end
+	  (http://gfxboot.sourceforge.net/).  Module by Sebastian Herbszt.
+
+Changes in 3.73:
+	* Upgrade gPXE to release version 0.9.5.
+	* Fix a number of build errors on various platforms.
+	* Handle systems with E820 "extended attributes" per ACPI 3.
+	  Someone "cleverly" decided to change the E820 spec in a
+	  backwards-incompatible manner!
+	* MEMDISK: default to "safeint".
+	* Adopt the moniker "The Syslinux Project", standard proper
+	  noun capitalization, to refer to the project as a whole.
+	  Thus, reserve the all-caps "SYSLINUX" to refer to the FAT
+	  loader.
+	* mboot.c32: add "-solaris" option to pass DHCP information to
+	  the Solaris kernel; required for automatic Solaris boot
+	  without using Solaris' pxeboot program.
+	* config.c32: trivial COM32 module to restart Syslinux with
+	  another configuration file from the command line (equivalent
+	  to the CONFIG command in the configuratin file.)
+
+Changes in 3.72:
+	* Include the pxechain.com module from Jeffery Hutzelman at
+	  Carnegie Mellon University.  This allows chaining another
+	  PXE boot program while changing the DHCP packet passed to
+	  it.
+	* Reorganize the Makefile system.
+	* Major PCI core cleanups and other source cleanup.
+	* gPXE code updated.
+	* Try to avoid memory-snooping attacks on passwords.  Note
+	  that if someone has root on the box, they generally don't
+	  need to compromise the boot loader...
+	* ISOLINUX: fix crash when given a zero-length file.
+	* sdi.c32: support gzipped SDI images.
+	* ISOLINUX: support generating images which can be either
+	  a CD-ROM or a hard disk (USB disk, etc.)  See
+	  doc/isolinux.txt for more information.
+	* Remote gdb support for COM32 modules; patch from Stefan
+	  Hajnoczi.
+	* Support beeps in F-key help in the simple menu system.
+	* Tab display of labels, based on a patch from Sebastian
+	  Herbszt.  Can be disabled with the NOCOMPLETE configuration
+	  command.
+	* "menu default" can now be specified after "menu begin", to
+	  indicate that a specific submenu should be the default entry.
+
+Changes in 3.71:
+	* Workaround for a VESA BIOS which tries to make DOS system
+	  calls(!!)
+	* Simple menu: fix navigation around disabled entries
+	  (or at least try to...)
+	* EXTLINUX: proper error message when confused about mount
+	  point.
+	* MEMDISK: be smarter about incompletely disabled floppies in
+	  the BIOS and about being the only floppy.
+	* Optionally allow initrd to be specified on a separate line
+	  rather than as part of the "append" line.  This is not
+	  recommended, but apparently makes life easier for some
+	  tools.
+	* SYSLINUX: if no config file is present, set the current
+	  directory to the root directory (Sebastian Herbszt).
+	* chain.c32: option "hide" to support hiding and unhiding of
+	  primary partitions on the boot drive with DOS, Win, or OS/2
+	  partition types (01, 04, 06, 07, 0b, 0c, 0e).
+	* Unbreak the KBDMAP command (broken in 3.70).
+	* EXTLINUX: fix the handling of the ADV when using CBIOS.
+	* ifcpu64.c32: simple COM32 module to select a 32- or 64-bit
+	  kernel (and optionally 32-bit kernels with or without PAE.)
+	  Eventually we want a scripting language for this
+	  kind of stuff; a Lua module is under development.
+	* Fix parsing of the SERIAL command without a baud rate
+	  specified.
+	* chain.c32: error out when try to boot an unbootable
+	  partition.
+	* SYSLINUX: when building the Win32 installer, search for
+	  MinGW under a large number of possible names.
+
+Changes in 3.70:
+	* PXELINUX: Support enhanced capabilities when running on top
+	  of gPXE (http://www.etherboot.org/).  In particular, support
+	  URL-style syntax for filenames, and any protocol that gPXE
+	  supports (except, currently, iSCSI and AoE.)  This feature
+	  is currently highly experimental.
+	* Substantial infrastructure changes to support files whose
+	  length aren't known at open time (typically network
+	  connections.)  Please note that the semantics of some of the
+	  comboot APIs have changed slightly; please see doc/comboot.txt.
+	* PXELINUX: We no longer require a TFTP server which supports
+	  the tsize option for all transfers.
+	* PXELINUX: Integrate with the gPXE source base; unified image
+	  now included as "gpxelinux.0".
+	* The source tree has been restructured; files that were
+	  previously in the root have moved into the core, dos, gpxe,
+	  and utils directories.
+	* "make install", "make netinstall", and "make extbootinstall"
+	  have been updated massively.  "make install-all" now installs
+	  all three.
+	* Change default dir for auxiliary files from
+	  /usr/lib/syslinux to /usr/share/syslinux.
+	* SYSLINUX: VFAT long filename support.
+	* MEMDISK: Any image less than 4096K (4 MB) is treated as a
+	  floppy disk.  The geometry-guessing code will recognize all
+	  common extended formats, but it is still possible some very
+	  exotic formats need geometry specification.  Large floppies
+	  and very small harddisks still need explicit specification.
+	* chain.c32: option "swap" to support swapping of BIOS drive
+	  numbers.  This is necessary to boot certain operating systems
+	  (DOS, Windows) from a secondary drive.
+	* chain.c32: option "file=" to support loading a boot file from
+	  the SYSLINUX filesystem instead of loading the boot sector
+	  from the drive.
+	* chain.c32: option "seg=" to control the load location.
+	* chain.c32: option "ntldr=" as a shorthand for "seg=0x2000
+	  file="; use this to load one of WinNT's loaders:
+
+	  chain.c32 hd0 1 ntldr=/MiniNT/setupldr.bin
+
+	  Note that the file needs to be in the SYSLINUX filesystem.
+	* chain.32: options "freedos=" and "msdos="/"pcdos=" as
+	  shorthands for "seg=0x60 file=" and "seg=0x70 file="
+	  respectively; use this to load FreeDOS's kernel.sys, MS-DOS's
+	  io.sys or PC-DOS's ibmbio.sys.
+	* Change to the A20 algorithm which *MIGHT* help systems that
+	  have systems which freeze when Syslinux is used with USB
+	  keyboards.  Note that this has been hard do verify, so I
+	  would greatly appreciate feedback on it.
+	* Complex menu system: unbreak menus which has unnamed
+	  submenus, like complex.c.
+	* Fix newline on the serial port for some com32 modules.
+	* chain.c32: support "boot" as the drive specification,
+	  indicating the drive from which it was booted
+	  (for syslinux/extlinux).
+	* SYSLINUX/EXTLINUX: support "localboot" with the same feature
+	  set as ISOLINUX.
+	* Add an experimental MBR for GPT partition tables.
+	* Use $(CC) when determining compile flags.
+	* chain.c32: fix booting from logical partitions (Sergey
+	  Vlasov.)
+
+Changes in 3.63:
+	* Fix errors in the PCI and DMI detection modules (Erwan Velu,
+	  Sebastian Herbszt).
+	* Fix host dependencies and other issues in the build system.
+	* PXELINUX: Allow class E addresses as unicast.
+	* sdi.c32: module to load Microsoft System Deployment Images.
+	  For additional information, please see:
+	    http://msdn2.microsoft.com/en-us/library/ms838543.aspx
+	* EXTLINUX: Correct reading directories with deleted entries.
+	* Shuffle library: correct the handling of certain geometries
+	  (an upward move with source material blocking the move); as
+	  required by sdi.c32 but theoretically possible for other
+	  formats as well.
+	* Add "make netinstall" to install /tftpboot.
+	* Fix some documentation files that didn't get moved/renamed.
+
+Changes in 3.62:
+	* Clean up garbage after "aborted." message.
+	* Clean up memdump.com filenames.
+	* Support SHA256 and SHA512 encrypted passwords.
+	* The shuffle library now can generate chained descriptors,
+	  thus allowing pretty much arbitrarily complex memory maps.
+	* Handle command lines up to 2047 characters, the current
+	  Linux kernel limit.
+	* vesamenu: support systems without linear framebuffer support
+	  (sigh, what is this, 1993?) and 15-bit RGB modes.
+	* Move the label storage (for the command-line interface) to
+	  high memory, removing the size limit and freeing up 64K of
+	  low memory.
+	* Get rid of 4096-entry limit in the simple menu system.
+	* New hierarchial submenu support: see MENU BEGIN, MENU END,
+	  MENU GOTO in doc/menu.txt.
+	* MENU QUIT allows creating a menu entry for returning to the
+	  command line.
+	* ISOLINUX: Work around bug in certain Adaptec BIOSes,
+	  patch by Bruce Robson.
+	* pngtopnm dependency removed from samples/ directory.
+	* Text documentation files (in doc/) renamed *.doc -> *.txt.
+
+Changes in 3.61:
+	* EXTLINUX: fix crash when accessing an empty file.
+	* elf.c32: If a PHDR segment is present, load it.
+	* Fix SHA-1 and MD5 passwords.
+	* ISOLINUX: fix booting when mastered without
+	  mkisofs -boot-info-table (broken since 3.50, sigh...)
+	* Handle BIOSes which emit multiple contiguous valid
+	  memory regions in the e820 map.
+
+Changes in 3.60:
+	* Support for "auxilliary data vector", a small amount of
+	  writable storage.  Currently only supported for EXTLINUX,
+	  but the infrastructure is there for the other derivatives,
+	  assuming a suitable storage location can be found.
+	* EXTLINUX: boot-once support (--once, --clear-once, and
+	  --reset-adv).
+	* A command is now required to the EXTLINUX installer, i.e. at
+	  least one of --install, --update, --once, --clear-once, or
+	  --reset-adv.
+
+Changes in 3.55:
+	* PXELINUX: as per RFC 5071, PXELINUX no longer requires the
+	  use of the magic cookie option (208) for unencapsulated
+	  options.  Currently it does not require it for
+	  vendor-encapsulated options (vendor-option-space) either,
+	  but that MAY be reverted in the future if it causes
+	  problems.
+	* Documentation text files moved to a common "doc" directory;
+	  man pages from the Debian project added to the "man"
+	  directory.
+	* Correct bug with self-overlapping memory areas when using
+	  the shuffle interface.
+
+Changes in 3.54:
+	* Add "menu separator", "menu indent", "menu disabled"
+	  (see README.menu).
+	* vesamenu: fix handing of VESA modes with noncontiguous
+	  memory buffers.  In particular, Qemu/KVM sets up such a mode
+	  when Cirrus Logic emulation is enabled (which is the
+	  default.)
+	* Support for calling real mode functions using far calls,
+	  with argument on the stack.  This was implemented to support
+	  the BIOS BBS specification, but subsequent experiments show
+	  that the at least one of the most common BIOS cores, Award,
+	  passes the presence check but doesn't actually implement the
+	  functionality.
+
+Changes in 3.53:
+	* Fix bugs related to the $PnP BIOS functionality on some
+	  platforms.
+	* PXELINUX: Fix the "naked" version of :: (suppress prefix.)
+	* elf.c32: better error messages.
+	* Faster operation under Intel VT virtualization.
+	* PXELINUX: Fix DHCP bootfile option.
+	* mkdiskimage: Support more than 1024 cylinders.
+	* (Hopefully) fix installer on non-x86 platforms.
+	* Fix shuffle_and_boot_rm, used by linux.c32.
+	* Fix shuffle_and_boot_pm on 386/486.
+	* ISOLINUX (at least): fix bss memory overwrite hang.
+	* MBR: Fix booting from logical partitions.
+	* Code cleanups.
+
+Changes in 3.52:
+	* Handle capitalized F-key commands in the menu system.
+	* Fix padding error when loading multiple ramdisks.
+	* Workaround for VMware crashing when trying to print a
+	  message during early kernel boot (does not seem to work,
+	  consider deleting.)
+	* chain.c32: add the ability to search for a specific MBR
+	  signature at runtime.
+	* Fall back to the server identity option if the siaddr field
+	  in the DHCP header isn't set.  This seems to match the
+	  behaviour of most PXE stacks.
+	* mkdiskimage: give the generated disk image an MBR signature.
+	* MEMDISK: Fix failures on some BIOSes.
+	* Simple menu system: new "MENU HIDDEN" option to not display
+	  the menu unless the user presses a key.
+	* Simple menu system: support MD5-encrypted passwords (modern
+	  Unix standard style, with "$1$" prefixes.)
+	* pcitest.c32: now functions as a full "lspci".  Thanks to
+	  Erwan Velu for this work.
+	* MEMDISK: Make EDD actually work.
+	* ISOLINUX: Fix for certain broken CD-ROM BIOSes which
+	  randomly corrupted register FS.
+	* Simple menu system: fix memory overwrite bug that caused
+	  some systems to lock up or behave weirdly.
+	* Fix building on 64-bit systems without a 32-bit libc installed.
+
+Changes in 3.51:
+	* EXTLINUX: Fix failure to find the configuration file.
+
+Changes in 3.50:
+	* New keywords allow the type of file to be specified in the
+	  configuration file.
+	* It is now supported to load a different configuration file
+	  with the CONFIG keyword.
+	* Fix API call 0x0019 (Read Disk.)
+	* MENU AUTOBOOT, MENU TABMSG, MENU PASSPROMPT allows
+	  internationalization of menu messages.
+	* A new feature, TEXT HELP, allows the administrator to set
+	  a multi-line help message for individual selections.
+	* Fix API call 0x0012 (Cleanup, shuffle and boot.)
+	* New API call "Cleanup, shuffle and boot to flat protected mode"
+	* New API call "Cleanup, shuffle and boot to real mode",
+	  similar to API call 0x0012 but allows arbitrary register setting.
+	* Introduce a library interface for loading arbitrary binary
+	  formats with relatively easily understood code.  See
+	  the elf.c32 module for an example on how to use it.
+	* New module "elf.c32", to load a protected-mode ELF kernel.
+	* MBR (old and new): Fix bug in CHS mode when LBA >
+	  65535*sectors.
+	* vesamenu: fix decoding of palettized PNG images.
+	* Update the Linux kernel boot protocol.
+	* PXELINUX: Press Ctrl-N at the boot prompt to read out the
+	  network info.
+	* Instead of the (non-existent) MAC, use the client identifier
+	  for networks like Infiniband and Firewire/1394.
+	* Add a new INCLUDE command to the core syslinux parser.
+	* Allow binding help text to F11 and F12.
+	* F-key help now available in the simple menu system.
+	* Disabled the polling for ARP during idle.  It is simply too
+	  slow on some (broken!) PXE stacks.
+	* PXELINUX: also try to fetch the config file based on UUID.
+	* SYSLINUX/EXTLINUX: New RAID mode (-r) which calls the BIOS
+	  to load the next device (typically the next drive) on boot
+	  failure.
+
+Changes in 3.36:
+	* MEMDISK: Disable EDD by default on floppy disks.  EDD can be
+	  enabled with the "edd" option and disabled with "noedd".
+	  This (hopefully) should make Ghost work again.
+	* SYSLINUX: "unix" installer now uses Linux ioctls instead of
+	  using libfat.
+	* New MBR which can boot from logical partitions.
+	* SYSLINUX: Fix bug in detecting special extensions which was
+	  introduced in 3.35 :(
+	* PXELINUX: Unbreak chainbooting FreeBSD (and possibly others.)
+
+Changes in 3.35:
+	* MEMDISK: New "safeint" mode.
+	* MEMDISK: Be more compliant with the PnP BIOS spec.
+	* MEMDISK: Turn on EDD support by default.
+	* MEMDISK: Try to work on some machines on which it would not
+	  work when there was no floppy drive in the system.
+	* Simple menu system: fix serial console support (broken in
+	  3.30).
+	* SYSLINUX: Support subdirectories.  Like ISOLINUX, the
+	  "current directory" is the directory in which syslinux.cfg
+	  is found; this is searched for in the sequence
+	  /boot/syslinux, /syslinux, /.  As a side benefit, label names
+	  like "linux-2.6.18" and "linux-2.6.19" are now supported.
+
+	  To install ldlinux.sys in a subdirectory, pass the -d
+	  directory option to the SYSLINUX installer.
+
+	  This work was sponsored by slax.org (thanks, Tomas!)
+	* New API call: read disk.
+	* Invoke ONERROR on initrd load failure.
+
+Changes in 3.31:
+	* The simple menu system (menu.c32 and vesamenu.c32) now
+	  support loading more than one configuration file at a time,
+	  using MENU INCLUDE or by specifying multiple filenames.
+	* The MENU COLOR statement can now control the shadowing mode.
+
+Changes in 3.30:
+	* libcom32 extended to support graphics mode and graphical console.
+	* vesamenu.c32, new graphical version of the Simple
+	  Menu System, see README.menu.
+	* New com32 modules by Erwan Velu do selection based on CPUID
+	  or PCI devices present.
+	* RPM spec: add syslinux-tftpboot module; move syslinux by
+	  default to the /usr/share/syslinux directory.
+	* RPM spec: extlinux is now a separate package.
+
+Changes in 3.20:
+	* EXTLINUX: New options --install (-i) and --update (-U), to
+	  make it clear if a boot loader should be installed or
+	  updated.  For now, defaults to --install for compatibility;
+	  a future version will require one of these options.
+	* New library functions to load and place files in memory.
+	* mboot.c32 bug fixes.
+	* Remove 8 MB kernel size restriction.
+	* Add "klibc" target for building unix/syslinux and
+	  extlinux/extlinux with klcc (klibc-1.4.27 or later.)
+	* PXELINUX: Fail (and eventually reboot) if no configuration
+	  file was found.
+	* COM32 module by Erwan Velu to make decisions based on DMI
+	  info.
+	* Fix issue where going back and forth between menus a lot
+	  would cause a hang.
+	* ISOLINUX: Fix bug which made "cd boot sectors" not work.
+
+Changes in 3.11:
+	* MEMDISK: Fix bug by which accessing the real floppy disk
+	  as B: in MS-DOS was broken.
+	* Simple menu system: allow tweaking of the screen layout.
+	* Simple menu system: better command-line editing, correctly
+	  handle command lines above 256 characters.
+	* PXELINUX: revert memory allocation change that caused
+	  problems on some network cards.
+	* MEMDISK: Try work around a bug on some BIOSes when no
+	  physical floppy disk is present in the system.
+	* Enable the 16550A FIFOs, if present, when doing serial
+	  console.
+	* New "totaltimeout" command establishes a timeout without
+	  regard for any user input.
+	* Simple menu system: timeout behaviour now more in line with
+	  user expectations.
+	* Simple menu system: "ontimeout" should now work correctly.
+
+Changes in 3.10:
+	* gcc 4.0.1 compilation fixes.
+	* Add support for querying the PCI BIOS in libcom32
+	  (used by ethersel et al.)
+	* Fix PCI handing (ethersel etc) on several old chipsets (and
+	  VMWare.)
+	* Try to deal with systems with broken EBIOS.
+	* New API call to do "localboot".
+	* New API call to query features.
+	* New API call to run kernel image, a lower-level call than
+	  "run command".  See comboot.doc.
+	* Fix for bug in EBIOS code discovered by Arwin Vosselman.
+	* NOESCAPE security fix.
+	* Comments are now recognized even without a space following #.
+	* Fix incorrect handling of mixes of entries with and without
+	  MENU PASSWD.
+	* The idle API call now harmlessly returns failure if it is a
+	  no-op.  That way the caller can decide whether or not to
+	  bother invoking it again.
+	* Temporarily disable the idle API call on PXELINUX, due to
+	  some platforms on which the idle API call seems to hang; this
+	  problem has not yet been debugged.
+	* MEMDISK: the handling of DOSEMU-headered images was broken;
+	  fix it.
+	* EXTLINUX: symlinks are now supported.
+	* Simple menu system: N and P now work correctly as hotkeys.
+	* MEMDISK: more BIOS bug workarounds.
+
+Changes in 3.09:
+	* gcc4 compilation fix.
+	* <BEL> (Ctrl-G) in message files now causes a beep.
+	* Reduce the command line to 511 characters; 1023 caused
+	  memory overflows.
+
+Changes in 3.08:
+	* SYSLINUX: Fix performance regression (-s mode always
+	  enabled.)
+	* Add API function for idle loop.
+	* libutil: Add do_idle() function for idle loop, make
+	  get_key() use it.
+	* libutil: Add SHA-1 and base64 functions.
+	* Simple menu system: add password support.
+	* EXTLINUX: Sparse files now handled correctly.
+	* EXTLINUX: Large directories now handled correctly.
+	* ALL: At the prompt, Ctrl-X now forces text mode.
+	* Fix configuration file parsing error, that could cause
+	  hangs.
+	* Rewritten advanced menuing system from Murali Ganapathy.
+	* MEMDISK: New "bigraw" mode to work around certain broken
+	  BIOS flash programs.
+	* COM32 module to boot Multiboot systems, including Xen.  See
+	  com32/modules/mboot.doc.
+	* Max command line changed to 1023 characters.  Note that the
+	  kernel proper still can only handle 255 characters without
+	  patching, and COM16 binaries can only handle 125 characters.
+
+Changes in 3.07:
+	* Fix chainloading (chain.c32).
+	* Fix zlib build problem.
+	* Use a private copy of <linux/ext2_fs.h>.
+
+Changes in 3.06:
+	* Fix typo that caused the ramdisk to load in the wrong place.
+
+Changes in 3.05:
+	* New API function "shuffle and boot"; allows COM32 modules to
+	  load or construct (almost) arbitrarily complex objects,
+	  e.g. a kernel and its initrd/initramfs in pieces, and have
+	  the API core reorganize memory for booting.  (A library API
+	  for this function will be introduced in a later version.)
+	* The initrd= option now supports multiple filenames separated
+	  by commas.  This is mostly useful for initramfs, which can
+	  be composed of multiple separate cpio or cpio.gz archives.
+	  (Note: all files except the last one are zero-padded to a 4K
+	  page boundary.  This should not affect initramfs.)
+	* EXTLINUX: Fix API function 000Ah (get derivative-specific
+	  info).
+	* libcom32/ethersel: Support PCI Config Mechanism #2 on
+	  machines still infested with that hideous old hack.
+	* SYSLINUX: Fix directory-parsing bug.
+
+Changes in 3.02:
+	* SYSLINUX: The "unix" installer now sets the MS-DOS
+	  attributes (hidden, system, readonly.)
+	* COM32 library: build the .lnx (test modules for running
+	  under Linux) as architecture native modules, in case
+	  i386 devel libraries aren't installed.
+	* EXTLINUX: Hack for systems which don't have BLKGETSIZE64
+	  defined in the standard header files.
+	* Simple menu system: minor aestetic improvements, and try to
+	  work better over a serial console (speed, and readability on
+	  monochrome terminal emulators.)
+	* New CONSOLE directive to control output on the video console
+	  (useful for dealing with some broken serial-forwarding
+	  BIOSes.)
+	* New com32 module "ethersel" for searching for an Ethernet
+	  card and selecting the proper version of Etherboot.
+	* EXTLINUX: Allow the user to override the detected geometry.
+	  Add help.
+
+Changes in 3.01:
+	* EXTLINUX, SYSLINUX: Fix compile errors on some systems.
+	* EXTLINUX: Default to zipdrive geometry (64 heads, 32
+	  sectors) if no other geometry can be detected.
+
+Changes in 3.00:
+	* SYSLINUX: Support FAT32 and EDD.  As an unfortunate
+	  consequence, LDLINUX.SYS is no longer an ordinary file; it
+	  is block-mapped at install time, which means it can only be
+	  written using the syslinux installers.
+	* SYSLINUX: Reorganize the source code for the installers;
+          each one of the installers (dos, win32, unix, mtools) is now
+          built in its own subdirectory.  In particular, "mtools" is
+	  the unprivileged installer which uses mtools; "unix" is the
+	  privileged installer which uses system calls.
+	* SYSLINUX: Completely rewritten DOS installer in C.
+	* ALL: "label" statement information is now stored in a
+	  compressed format, which means that a lot more labels are
+	  permitted (500-1000 in a typical configuration, but depends
+	  on the complexity.)
+	* EXTLINUX: New derivative, which boots from an ext2/ext3
+	  filesystem.
+	* SYSLINUX: The DOS and Win32 installers can now optionally
+	  write the boot sector to a file instead of the real boot
+	  sector.  This is not supported in the Linux installers,
+	  however.
+	* ALL: New NOESCAPE command, disables the "hold down the Shift
+	  key to display the prompt" behaviour.
+	* New simple menu system, as an alternative to the advanced
+	  menu system already present.  See README.menu for details.
+	* PXELINUX: Filenames can now be prefixed with an IP address
+	  or DNS name plus :: (e.g. 192.0.2.1::filename or
+	  server.domain.com::filename), which downloads a file from an
+	  alternate TFTP server, or just a :: (e.g. ::filename), which
+	  suppresses the common pathname prefix.  See pxelinux.doc.
+	* SYSLINUX: Add an -m option to the DOS and Win32 installers
+	  to write an MBR and -a to mark the partition SYSLINUX is
+	  being installed on active.
+	* MEMDISK: Give a way to query the boot loader type while
+	  running MEMDISK; see memdisk/memdisk.doc and
+	  sample/mdiskchk.c.
+	* mkdiskimage: substantially improved mkdiskimage which, among
+	  other things, can now be used to initialize USB keys as
+	  zipdrives; see README.usbkey for more information.
+
+Changes in 2.13:
+	* MEMDISK: Fix command-line parsing "brown paper bag" class
+	  bug.
+	* MEMDISK: Add "raw" mode to support the DOS boot disk from
+	  WinME/XP, which seems to deliberately crash the system
+	  when someone uses the "INT 15h mover" highmem API.
+	* Make "make install" do something sane for the com32
+	  development environment.
+	* In the spec file, create a separate -devel RPM for the com32
+	  development environment.
+
+Changes in 2.12:
+	* Simple C library, based on klibc, for writing COM32
+	  programs.
+	* Fix the handling of file length in loading of COM32
+	  programs.
+	* MEMDISK: Work around a linker bug by rearranging the code to
+	  not use the linker for the 16-bit code.
+	* SYSLINUX: If we're building on a machine without a Win32
+	  (mingw) compiler, just skip building syslinux.exe.
+	* ISOLINUX: Support non-mkisofs mastering programs, at least
+	  as long as the image is single-session.  For best results,
+	  ISOLINUX should be the only boot loader installed.
+	* MEMDISK: Allow the user to specify that the simulated disk
+	  should be write-protected.
+
+Changes in 2.11:
+	* ALL: Add an API call to get the configuration file name.
+	* SYSLINUX: Fix bug in 2.10 that prevented it from working
+	  correctly for a lot of people.
+	* SYSLINUX: In the installer, make mtools a bit less fussy.
+	* Make the menu system compile with newer gcc's.
+
+Changes in 2.10:
+	* MEMDISK: Handle images compressed with zip as well as with
+	  gzip.  Some Windows-based image tools apparently generate
+	  these kinds of images by default.  Patch by Patrick
+	  LoPresti.
+	* Major menu improvement from Murali Ganapathy.
+	* ISOLINUX: Wonderfully sick and brilliant workaround for
+	  severe bugs in certain Award BIOSes; from Knut Petersen.
+	* SYSLINUX: Fix for the nomtools installed, from Frederic
+	  Pasteleurs.
+	* PXELINUX: Fix handling of IP numbers in the ranges
+	  100-109 and 200-209.
+	* ALL: New option "allowoptions" (defaults to 1), which
+	  controls if options are allowed on the command line or not.
+	* SYSLINUX: Support building under klibc (see the klibc
+	  distribution for details.)
+
+Changes in 2.09:
+	* SYSLINUX: Remove residual setuid crap from
+	  syslinux-nomtools.
+	* Handle video pages correctly when using the API functions.
+	* Handle compiling on an x86-64 platform correctly.
+	* Menu system from Murali Krishnan Ganapathy; see the menu
+	  directory for information.
+	* COMBOOT: Allow COMBOOT programs to change screen text mode.
+	* COMBOOT: Correct the documentation of how to detect
+	  SYSLINUX from COMBOOT!!!!
+	* COMBOOT: Fix "get key without echo" API function.
+	* SYSLINUX: Fix bug that affected the API open function.
+	* ALL: Improve the E820 memory parser, to work around some
+	  buggy BIOSes.
+
+Changes in 2.08:
+	* Add new configuration command "ontimeout" to allow timeout
+	  to have a different action than just pressing Enter.
+	* Add new configuration command "onerror" to allow a custom
+	  command to be executed in case the kernel image is not found.
+	* Fix bugs in the COMBOOT/COM32 command-line parsing.  APPEND
+	  now works with COMBOOT/COM32 images.
+	* PXELINUX: Poll for ARP requests while sitting at the
+	  prompt.  This makes some boot servers a lot less unhappy.
+	* PXELINUX: Actually free sockets when we get a failure
+	  (including file not found.)  This bug would cause us to run
+	  out of sockets and thus "go deaf" after a while.
+	* MEMDISK: Add an API to query for the existence of MEMDISK.
+	* SYSLINUX: Fix loading boot sectors (.bs/.bss) from floppy
+	  disk.
+	* .c32 is now one of the extensions searched for
+	  automatically.
+	* PXELINUX: RFBG.exe seems to randomly overwrite memory
+	  location 0x5700.  Thus, don't use it!
+	* PXELINUX: Change pathname length max from 63 to 127; change
+	  max vkernels from 128 to 64.
+	* Support Ctrl-U -> kill entire command line input.
+	* The "samples" directory contains a (barely at all tested)
+	  chain loading example, chain.c32, which may be used to
+	  chainload local floppy disks and hard disks.  Use with
+	  "chain fdN" or "chain hdN [partition]"; N = 0 for the first
+	  drive of each type.
+
+Changes in 2.07:
+	* MEMDISK: Workaround for BIOSes which go into a snit when
+	  they get a RESET command for the floppy system when there is
+	  no floppy in the system.
+	* PXELINUX: Add "ipappend 2", which passes the hardware
+	  address of the boot interface to the kernel as a
+	  command-line option.
+	* mkdiskimage: fix the generation of the end limit.
+	* PXELINUX: Fix multiple bugs in chainloading of other NBPs.
+	* MEMDISK: Fix bug that would occationally cause "ran out of
+	  input data" when using compressed disk images.
+	* SYSLINUX: Updates for the win32 installer (from Lars Munch.)
+	* PXELINUX: PXELINUX-specific options are now recognized both
+	  in a vendor-option-space (a.k.a. type 43 encapsulated) as
+	  well as in a site-option-space (unencapsulated.)
+	* COM32: Don't crash when DS != 0.
+	* COMBOOT/COM32: Make file reading work correctly.  Thanks to
+	  Phung Chi Kien for submitting a test program.
+
+Changes in 2.06:
+	* ALL: Fix problem that would occationally cause a
+	  boot failure, depending on the length of the kernel.
+	* ISOLINUX: Fix problem that would occationally cause a
+	  boot failure, depending on the length of directories.
+	* SYSLINUX: Win32 installer now flushes buffers.
+	* ppmtolss16: Be fully compliant with the PNM spec;
+	  actually process comments in the header and odd
+	  alignments of the various parameters, as well as
+	  "plain" (not raw) files and PBM and PGM files.
+	* PXELINUX: Lower the default MTU to 1472 in order to deal
+	  with systems with slightly nonstandard MTUs, and PXE
+	  stacks which don't defragment correctly.  Unfortunately this
+	  is very hard to test dynamically.
+
+Changes in 2.05:
+	* PXELINUX: Add a default query based on the hardware address
+	  of the boot device.  This is in lower case hexadecimal form
+	  separated by dashes and including the hardware type, for
+	  example, the Ethernet (type 1) address 88:99:AA:BB:CC:DD
+	  would query the file pxelinux.cfg/01-88-99-aa-bb-cc-dd.
+        * PXELINUX: Fix bug involving non-IP-based config file names.
+	* SYSLINUX: New installer for WinNT-based systems, from Lars
+	  Munch.
+	* MEMDISK: Fix handling of memory region overlap when
+	  decompressing.  Thanks to Mikhail Kupchik for identifying
+	  the problem.
+
+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.
+
+Changes in 2.02:
+	* SYSLINUX: Security flaws have been found in the SYSLINUX
+	  installer when running setuid root.  Rewrite the SYSLINUX
+	  installer so it uses mtools instead.  It therefore now
+	  requires mtools (specifically mcopy and mattrib) to exist on
+	  your system, but it will not require root privileges and
+	  SHOULD NOT be setuid.
+
+Changes in 2.01:
+	* MEMDISK: Fix memory sizing bug when the ramdisk crosses the
+	  16 MB boundary.
+	* MEMDISK: Add a "pause" option to stop immediately before
+	  booting, to read off the messages.
+	* MEMDISK: Support disk images with DOSEMU headers.
+	* Update the mkdiskimage script to handle newer mtools
+	  versions, and be able to generate disk images with DOSEMU
+	  headers (controlled by the -d option).
+	* Fix the COM32 sample program.
+	* PXELINUX, ISOLINUX: Fix some COMBOOT API calls.
+	* PXELINUX: Doc fix.
+	* Build SYSLINUX into a small library for encapsulation into
+	  other programs (however, please keep in mind this is a GPL'd
+	  library.)
+	* SYSLINUX: Make installer work with "owner" in /etc/fstab.
+	* SYSLINUX: Fix issue with working on nonpartitioned hard disk
+	  devices.  THIS CONFIGURATION IS NOT RECOMMENDED.
+
+Changes in 2.00:
+	* ALL: Add support for "COM32" (32-bit COMBOOT) images.
+	* ALL: Add an API for COMBOOT/COM32 images.  See comboot.doc
+	  for details.  There is a C development environment for
+	  COM32 being created; it should be ready at some point in
+	  the future.
+	* Fix mbr.asm so that it actually works.
+	* SYSLINUX: The syslinux installer *SHOULD* now be safe to
+	  run setuid root.
+	* PXELINUX: Fix bug where PXELINUX would override random
+	  chunks of the UNDI code segment!  Thanks to Kevin Tran for
+	  finding this bug.
+	* ISOLINUX: Fix a bug related to slashes in pathnames.
+	* ISOLINUX: Fix a bug in handling initrds over 128 MB.
+	* ALL: Make the <Ctrl-V> key print out the version; this is
+	  to help debugging.
+	* Add a small script, mkdiskimage, to create a DOS-formatted
+	  hard disk image using mtools.  This may be useful in
+	  conjunction with MEMDISK.
+	* ISOLINUX: Search for a /boot/isolinux directory as well as
+	  /isolinux.
+	* ALL: Fix a bug related to very long configuration files.
+	* PXELINUX: Work around a NASM bug which would result in no
+	  delay before reset if an error occurs.
+
+Changes in 1.76:
+	* ISOLINUX: Remove code no longer used which caused hangs on
+	  some Toshiba laptops.
+
+Changes in 1.75:
+	* ALL: NASM 0.98.32 or later is now required to build
+	  SYSLINUX from sources.
+	* SYSLINUX: put back in the workaround for the BIOS floppy
+	  table.  This seems to be a requirement for "extended" floppy
+	  formats to work correctly.
+	* SYSLINUX: No longer warn if one is trying to boot on a 286
+	  or older.  The above BIOS workaround no longer fits if the
+	  requirement to use only 8086-compatible code in the early
+	  boot is maintained.  It made sense in 1994, but in 2002 a
+	  286 or older is a museum object.
+	* SYSLINUX: Use a downright bizarre, stateful algorithm to try
+	  to guess the maximum transfer size.  I am *hoping* this will
+	  cut down on the number of systems for which -s is required
+	  to work at any acceptable speed.
+	* ISOLINUX: Add a few more workarounds for various broken El
+	  Torito BIOSes.
+	* Make sure .depend files aren't accidentally packed...
+	* ALL: Fix bugs in the extension-detect code; this caused
+	  files like COMBOOT images and CD boot sectors to be
+	  mis-identified as Linux kernels and rejected.
+	* ALL: Fix the return from COMBOOT.
+	* ALL: Do some of the early groundwork for supporting DOS
+	  system calls in COMBOOT.
+	* Get rid of unnecessary "near" directives, making the code
+	  bigger.
+	* PXELINUX: Put the PXE stack back in the init state before
+	  invoking a chain-loaded NBP.
+	* PXELINUX: Actually found the combination of calls that
+	  allows some (most?) PXE 2+ stacks to be unloaded from memory
+	  properly.
+	* PXELINUX: Add "keeppxe" command-line option to disable
+	  the standard unloading of the PXE stack.
+
+Changes in 1.74:
+	* SYSLINUX: fix bug that would cause valid kernel images to be
+	  labelled "invalid".
+
+Changes in 1.73:
+	* Work on removing gratuitous differences between modules.
+	* Break up the source in common and module-specific files.
+	* PXELINUX: Allow chaining of other PXE NBPs.
+	* ISOLINUX: Allow loading "CD-ROM boot sectors".
+	* ALL: generalize the definition of a boot sector/NBP.
+
+Changes in 1.72:
+	* PXELINUX, ISOLINUX: Fix bugs in the new core code.
+
+Changes in 1.71:
+	* Fix a "brown paper bag" class bug in the new core code.
+
+Changes in 1.70:
+	* Major code restructuring.
+	* Relax the conventional memory limits somewhat.
+	* MEMDISK: Set up the "version number string" pointer in the
+	  header correctly.
+        * SYSLINUX: Fix, again, "the bug that won't die": the use of
+          the offset parameter with the SYSLINUX installer.
+	* SYSLINUX: Fix possible superblock corruption problem in the
+	  SYSLINUX installer.
+
+Changes in 1.67:
+	* Handle bug in the location of initrd.
+
+Changes in 1.66:
+	* MEMDISK: Make compile with newer versions of gcc.
+
+Changes in 1.65:
+	* ISOLINUX: Support booting disk image files (to boot DOS or
+	  other non-Linux operating systems), *IF* the BIOS works
+	  correctly; unfortunately many BIOSes apparently don't.
+	* Support Linux boot protocol version 2.03 (explicitly
+	  specify the initrd address limit.)
+	* Handle small "pseudo-kernels"; images that use the Linux
+	  kernel boot protocols but are less than 64K in size.
+	* MEMDISK: New subsystem; this is a driver which allows
+	  legacy OSes to boot using an in-memory simulated disk.
+	  See memdisk/memdisk.doc for more info.
+	* PXELINUX, ISOLINUX: Correctly handle files larger than 65535
+	  blocks (32 MB for PXELINUX, 128 MB for ISOLINUX.)
+	* PXELINUX: Make a best-effort attempt at freeing all memory
+	  claimed.  From the looks of it, it will fail on most PXE
+	  stacks.
+
+Changes in 1.64:
+	* Limited support for hardware flow control when using a
+	  serial port console.
+	* Support specifying the serial port I/O address explicitly.
+	* Make DOS installer hopefully behave more nicely when used on
+	  recent Windows versions.
+	* Fix returning to text mode when a font has been specified.
+	* Attempt to detect missing serial port hardware and disable
+	  the serial port if there is nothing there.
+
+Changes in 1.63:
+	* Make the ppmtolss16 program handle color conversion more
+	  correctly.
+	* Clean up "make install" target, honour INSTALLROOT if it
+	  exists.
+	* SYSLINUX: Fix stack-smash bug identified by Steffen
+	  Winterfeldt.
+	* Hopefully fix return-to-text-mode on some graphics cards.
+	* ISOLINUX: Bug workaround for Award BIOS 4.51, and perhaps
+	  other buggy BIOSes as well.
+
+Changes in 1.62:
+	* PXELINUX: Allow the DHCP server to override the
+	  configuration file name and pathname prefix, using
+	  "site-specific" DHCP options.
+	* PXELINUX: Documentation fixes.
+	* PXELINUX: Fix the "ipappend" option; the last two values
+	  were reversed vs. what the kernel expected.
+	* Introduce a way to return to text mode once we are already
+	  in graphics mode.  This may be useful for F-key help
+	  screens.
+	* Fix several bugs in the way return to text mode was handled.
+
+Changes in 1.61:
+	* ISOLINUX: Support full pathname searches.  Max length for a
+	  pathname is 255 characters.  As a result, only 64 "label"
+	  statements are supported in ISOLINUX.
+	* PXELINUX: Max filename length extended to 63 characters.
+
+Changes in 1.60:
+	* Add support for graphical splash screens.
+	* Add mode control characters, which allows you to control
+	  message display output depending on output mode (text,
+	  graphics, or serial port.)
+	* ISOLINUX: New program, which boots Linux from a CD-ROM
+	  without using floppy emulation mode.  See isolinux.doc for
+	  more details.
+	* PXELINUX: Don't search for boot sector file types, since
+	  they don't work anyway.
+	* SYSLINUX: Document the LOCK command for Win9x, and the error
+	  dialog box for WinNT/2K.
+
+Changes in 1.54:
+	* PXELINUX: Fix code for finding !PXE from PXENV+.  This was
+	  due to a spec bug; match the most recent spec since that
+	  seems to be what implementations actually do.
+	* SYSLINUX: Add some smarts to the boot sector, which
+	  hopefully should reduce the number of systems which require
+	  stupid mode ("syslinux -s").
+	* PXELINUX: Document further some of the pathologies with old
+	  PXE stacks.
+	* When specifying a "default" command line, no longer
+	  automatically appent "auto".  See the "DEFAULT" command in
+	  syslinux.doc for more information.
+	* PXELINUX: Clean up the allocation of local socket numbers.
+
+Changes in 1.53:
+	* PXELINUX: Rename pxelinux.bin to pxelinux.0, to match what
+	  most PXE servers seem to expect.
+	* PXELINUX: Update the DHCP/boot server setup documentation.
+	* PXELINUX: Support new "localboot" option for "label"
+	  sections.
+	* PXELINUX: More robust parsing of DHCP/boot server packets.
+	* PXELINUX: Include a small utility program "gethostip" to
+	  compute hexadecimal IP addresses.
+
+Changes in 1.52:
+	* PXELINUX: Fix bugs introduced by new A20 code.  (SYSLINUX
+	  has also been changed for code consistency reasons, but I'm
+	  pretty sure the changes are don't care on SYSLINUX.)
+	* Documentation updates.
+	* PXELINUX: Add "ipappend" option to generate an ip= option to
+	  the kernel.
+
+Changes in 1.51:
+	* PXELINUX: Not all PXE stacks fill in the IP address for a
+	  type 3 cached info query.  Use a type 2 cached info query
+	  for this information (only.)
+	* Yet another attempt at A20 coding.  Now support BIOS call
+	  15:2401 as well, and handle machines which always have A20
+	  on separately.
+	* Support memory detection using INT 15h, AX=0E820h.  BIOS
+	  manufacturers have apparently gotten sloppy about keeping
+	  INT 15h, AX=0E801h working properly.
+	* Don't issue <CR><LF> onto the serial port when we're doing
+	  screen wraparound.
+
+Changes in 1.50:
+	* Yet another A20-code update.  It seems some "legacy-free"
+	  machines and embedded gear simply don't have a KBC to talk
+	  to, and that waiting for one will wait forever.  Sigh.
+
+Changes in 1.49:
+	* SYSLINUX: Implement a hack for BIOS drivers which hog significant
+	  chunks of low memory during boot.  (Note: PXELINUX already
+	  had this modification.  SYSLINUX does still require that the
+	  low 512K is available; PXELINUX requires 384K.  Machines
+	  with a physical memory hole in the low 640K cannot boot
+	  Linux no matter what.)  Depending what the reason is for the
+	  memory hole, a new kernel (2.4.0-test3-pre3 or later) may be
+	  required.
+	* SYSLINUX: Default installer binary now compiled against
+	  glibc 2.1.  If this is inappropriate for your system and you
+	  still want to use the offical version of SYSLINUX, please
+	  follow the instructions in "distrib.doc" to rebuild the
+	  installer.
+	* SYSLINUX: Linux installer program now supports -o <offset>
+	  option which does a loopback mount with the
+	  -o loop,offset=<> option.  Useful to run SYSLINUX on an
+	  individual partition of a whole-harddisk image.
+	* Include the source code to a Master Boot Record (MBR)
+	  functionally equivalent to the one installed DOS except it
+	  includes EBIOS support, and should be resistant to geometry
+	  changes.  The MBR code is public domain.
+	* PXELINUX: Fix "double p" bug: if the tftp prefix was null,
+	  all filenames would get a "p" preprended, e.g.
+	  "ppxelinux.cfg" and "pvmlinux".
+
+Changes in 1.48:
+	* PXELINUX: Workaround for PXE ROMs based on the Intel PXE PDK
+	  3.0 build 071 and earlier: missing !PXE structure pointer.
+	* PXELINUX: Handle larger BOOTP/DHCP packages.
+	* PXELINUX: The command line passing was broken; fix.
+	* PXELINUX: Make COMBOOT images work.
+	* PXELINUX: Documentation on how to make booting work using
+	  the PDK 3.0-derived clients, which aren't so generous as to
+	  allow booting with only "PXEClient" specified.
+
+Changes in 1.47:
+	* PXELINUX: RFC 1123 states that a TFTP implementation MUST
+	  use adaptive timeout, "at least an exponential backoff of
+          retransmission timeout is necessary."  Implement a very
+	  simple exponential backoff for retransmits.
+	* PXELINUX: Updated documentation, including pointer to new
+	  TFTP server.
+	* PXELINUX: When sending ERROR due to bad OACK, use the proper
+	  destination port number (why are TFTP port numbers so odd?)
+	* PXELINUX: If the boot dies in the middle somewhere,
+	  eventually give up and reset the machine (unattended
+	  operation.)
+
+Changes in 1.46:
+	* New program PXELINUX to do network booting using a
+	  PXE-compliant (Pre-Execution Environment) network booting
+	  PROM.  See pxelinux.doc for details.
+
+Changes in 1.45:
+	* Serial console support.  See syslinux.doc for details.
+
+Changes in 1.44:
+	* Change HIGHMEM_MAX to 38000000h to (hopefully) avoid the
+	  kernel stepping on it; 3f000000h was apparently a higher
+	  limit than the kernel used!
+
+Changes in 1.43:
+	* Add sys2ansi.pl script to display the contents of a
+	  colorized SYSLINUX file.
+	* Changed the io_delay once again, after a report that the
+	  old delay port causes hangs on some systems.
+
+Changes in 1.42:
+	* Frob the "fast A20 gate" port as well as the keyboard
+	  controller; will this help systems with problems?
+	* Be even more paranoid about A20, unfortunately even this
+	  seems to be not paranoid enough... what I don't understand
+	  is that if there is hardware out there *this broken*, how
+	  can it run Linux at all?  Report an error message rather
+	  than hang forever if A20 is stuck.
+	* Include some intermediate files in the distribution, plus
+	  provide a "make installer" target for distributors to relink
+	  the install programs only.  I would prefer the syslinux boot
+	  loader proper to be "binary clean" for debuggablity -- use
+	  "make clean ; make installer" to rebuild the installers only.
+
+Changes in 1.41:
+	* Don't get confused by directories, volume labels, or VFAT
+	  long names.
+	* Use INT 15h, AX=0E801h to query memory size before trying
+	  INT 15h, AH=88h.  This not only provides more headroom
+	  between the kernel and the initrd on large-memory machines,
+	  but it appears some recent BIOSes actually have started
+	  returning garbage for the AH=88h (older) call.
+	* Trust high memory beyond the 15 MB mark if the user has
+	  specified it, or if obtained with INT 15h, AH=0E801h (with
+	  no memory holes above 1 MB.)
+
+Changes in 1.40:
+	* Increase A20M delay and put in a test to avoid problems on
+	  certain IBM Thinkpads (thanks to Donnie Barnes of RedHat
+	  for vital info on this one.)
+	* Support COMBOOT style boot command images.
+	* Support chain loading (foreign operating systems, e.g. DOS).
+	* Include a new "copybs" DOS utility to copy a boot sector to
+	  a file (under Linux, use "dd".)
+	* Fix the DOS installer to work for disks over 32 MB.
+	* SYSLINUX should now handle disks with more than 65536 tracks.
+
+Changes in 1.37:
+	* Fix a bug that caused "label" statements in syslinux.cfg to
+	  not be handled properly.
+	* Updated the documentation.  Among other things, we now allow
+	  up to 128 "label" statements.
+
+Changes in 1.36:
+	* Fix for booting old (pre-initrd) kernels.
+	* It seems at least some versions of OS/2 doesn't set up all
+	  the fields in the superblock correctly.  Account for that.
+	* Fix bug that caused boot failure when using the mem= option.
+
+Changes in 1.35:
+	* Loading from partitions now should work properly.  (Actually
+	  tested, this time.  You should even be able to dd a floppy
+	  to a partition and boot from it.)
+	* Removed large workaround code for an alleged ancient BIOS
+	  bug I have never actually seen.  The -s option should work
+	  on those machines, anyway.
+	* Support for simple keyboard remappings, same as used by
+	  LILO (once again to support localization.)  The program
+	  keytab-lilo.pl from the LILO distribution included to
+	  generate such maps.
+	* Added a "safe, slow and stupid" (-s) option to the
+	  installers.  This option will lobotomize the boot sector to
+	  hopefully work on even very buggy BIOSes.
+
+Changes in 1.34:
+	* Ability to load a VGA font on bootup (for localized Linux
+	  distributions.)
+
+Changes in 1.33:
+	* Bug fix in the Linux installer.
+	* Added a workaround for a bug in certain AMI/Intel BIOSes
+	  when booting from CD-ROM.
+	* Documentation changes.
+
+Changes in 1.32:
+	* FAT16 filesystems are now supported.
+
+Changes in 1.31:
+	* Now compiles under Linux, using NASM, rather than using
+	  Turbo Assembler under DOS.  See http://www.cryogen.com/Nasm
+	  for information about NASM.
+	* Linux-hosted SYSLINUX installer, as well as a
+	  rewritten DOS installer (now is written in assembler, so we
+	  don't need Turbo C.)
+
+Changes in 1.30:
+	* Added support for loading bzImage and initrd loading, and made
+	  SYSLINUX new-setup-code aware (SYSLINUX 1.30 id=0x31).
+	* Added LILO-style kernel labels; see the LABEL and IMPLICIT
+	  keywords in README file.
+	* Added support for colorization of intro and help screens.
+	* The vga= option is now handled correctly.
+	* Massive rewrite of large chunks of the code in order to
+	  support the first two new features.
+
+Changes in 1.20:
+	* Added simple online help at the "boot:" prompt.
+	* Removed 2880K image as I no longer have access to such a
+	  floppy drive.	 (Donations accepted!!)
+	* Decided to distribute the source in a subdirectory rather
+	  than in a nested zipfile.
+
+Changes in 1.11:
+	* Removed a sanity check which would cause booting to fail on
+	  Phoenix BIOS version 4.03.  Apparently this BIOS is buggy.
+
+Changes in 1.10:
+	* Added configuration file SYSLINUX.CFG.  This file contains all
+	  configurable options, and can be edited from any OS which can
+	  access an MS-DOS filesystem; there is no longer a need to run
+	  SYSLINUX.EXE except to write the boot sector.
+	* Default command line now given by "default" line in config
+	  file.
+	* LINUXMSG.TXT and BOOTMSG.TXT hard-coded file names replaced by
+	  "display" and "prompt" lines in config file.
+	* LILO-style option appending now supported ("append" line in
+	  config file).
+	* Prompt timeout is now supported ("timeout" line in config
+	  file).  The timeout is cancelled when anything is typed on the
+	  command line.
+	* Pressing <ESC> or <Ctrl-C> at the Loading... stage now aborts
+	  the kernel loading in progress and returns the user to the
+	  boot: prompt.
+	* The installer now automatically sets the READONLY flag on
+	  LDLINUX.SYS.
+	* Added 2880K disk image.
+
+Changes in 1.03:
+	* Fixed bug that would prevent booting from double-density
+	  floppies and other DOS filesystems with multiple sectors per
+	  cluster.
+	* Added 720K disk image.
+	* Changed default kernel name on disk images to LINUX.
+
+Changes in 1.02:
+	* Fixed bug that would garble the command line on recent kernels
+	  with more than 4 sectors of setup code (this wasn't really a
+	  *bug*; rather, a kernel change broke the code.  Unfortunately
+	  the Linux boot interface is still sorely undocumented).
+	* Added BOOTMSG.TXT file support (message file which does not
+	  force display of the boot prompt).
+
+Changes in 1.01:
+	* Fixed bug on some (most?) 386 BIOSes would require two boot
+	  attempts.