Hi folks, Syslinux 5.00 is out in time for the holidays. This release includes a lot of changes from 4.06. I've included the NEWS entries below, which highlight the major changes. Lots of assembly code has been rewritten in C, which makes further development much easier (and also really helped for the 'firmware' abstraction that appears in Syslinux-6.00-pre1). So be on the lookout for regressions in this release when compared with 4.0x, though many bugs have been hammered out thanks to some excellent testing and feedback from various people. The COMBOOT stuff has been removed and now all modules are ELF objects, which allows us to do some neat things with symbols at runtime and provides the groundwork for more advanced things in the future. And we've also now got XFS filesystem support. Happy hacking. --- 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. -- Matt Fleming, Intel Open Source Technology Center
Op 6-12-2012 21:20, Matt Fleming schreef:> Happy hacking.I'm getting the following error trying to load menu.c32 from Isolinux: "Failed to load libutil_com.c32 failed to load COM32 file menu.c32" As there's no installer for Isolinux (unlike syslinux), I simply copied files out of the archive, including ldlinux.c32. File list showing I copied from 5.00-release (all to same dir, and as root-dir on the created CD) : 06-12-2012 11:50 34.816 ISOLINUX.BIN 03-12-2012 01:09 4.798 ISOLINUX.CFG 06-12-2012 11:49 428.010 ldlinux.c32 06-12-2012 11:50 26.140 MEMDISK 06-12-2012 11:49 30.694 menu.c32 06-12-2012 20:50 2.949.120 usb3demo.IMG Isolinux.cfg start content (rest on request if necessary) : UI /menu.c32 DEFAULT jemmex PROMPT 0 TIMEOUT 200 ONTIMEOUT jemmex ONERROR setup Note that above is an ISO loaded by MEMDISK as follows (from a CD using isolinux 4.06) : label test menu label ^I. Test menu hide menu default text help Execute this test setting. You might want to hit the tab-key to see what's happening.. endtext linux /memdisk initrd /dosusb3.iso append - iso nopassany hoping my feedback is usefull, and meanwhile reverting to 4.06, Bernd
Now WOW! This version actually boots fine on my netbook! So I want to send all the developers a very warm thank you for releasing this version. You guys totally rock! Cheers! Fran?ois On 06/12/2012 15:20, Matt Fleming wrote:> Hi folks, > > Syslinux 5.00 is out in time for the holidays. This release includes a > lot of changes from 4.06. I've included the NEWS entries below, which > highlight the major changes. > > Lots of assembly code has been rewritten in C, which makes further > development much easier (and also really helped for the 'firmware' > abstraction that appears in Syslinux-6.00-pre1). So be on the lookout > for regressions in this release when compared with 4.0x, though many > bugs have been hammered out thanks to some excellent testing and > feedback from various people. > > The COMBOOT stuff has been removed and now all modules are ELF objects, > which allows us to do some neat things with symbols at runtime and > provides the groundwork for more advanced things in the future. > > And we've also now got XFS filesystem support. > > Happy hacking. > > --- > > 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. >