Syslinux 5 Changelog

From Syslinux Wiki
Revision as of 11:41, 16 January 2013 by Ady (talk | contribs) (Changes in 5.00)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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.