News-3.74

From Syslinux Wiki
Revision as of 20:32, 3 April 2009 by Pierre (talk | contribs) (Refactor UI mode entry)

Jump to: navigation, search

Syslinux 3.74 was released on <date>


Summary: This new release adds: UI mode, dynamic keyboard mapping, Add calls for directory functions, documentations updates, GPXE 0.9.7, Simple command module, cpuid updates, Hardware Detection Tool, PCI improvements, memdisk improvements, shuffler improvements, quiet mode, memory hole support & many bugfixes


UI mode

The configuration files syntax supports a new UI directive to specify a menu system. The DEFAULT directive can be used to select the default entry inside the menu.

Prior to that release, the syntax was:

  DEFAULT menu.c32

Now, you can do:

  UI menu.c32
  DEFAULT Linux


In the previous example, if Linux points into a submenu, that menu becomes the start menu; in other words, this directive has the same effect as both MENU DEFAULT and MENU START.

For backwards compatibility with earlier versions of Syslinux, this directive is ignored unless the configuration file also contains a UI directive.

Commit

kbdmap com32 module

This new module allows to load dynamically a new keyboard map, read-only shell

Syntax: kbdmap <key_map>

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commitdiff;h=2b02abdaa91f41235f40f846d08bb09d8841baa6;hp=fd3b1f970c6385d178762fb5cfe922a2930d0cad

Directory functions

Add calls for directory functions; Implement most only for FAT (SYSLINUX).

Uses INT 22h AX= 001Fh, 0020h, 0021h and 0022h to prepare for the COM32 C functions getcwd(), opendir(), readdir(), and closedir(), respectively.

INT22h, AX=001Fh will return a valid value for all variants. INT22h, AX= 0020h, 0021h, and 0022h are only implemented for SYSLINUX while other variants will call comapi_err for these 3.

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commit;h=c1def425e3eeb245da7a59025f2fa37f02368504

Read-Only Shell (ROSH)

ROSH is designed to make exploring the contents of a file system/disk possible from the Syslinux environment. Primarily, it is geared towards the disk-based variants as TFTP currently does not have any standardized method for retrieving a directory listing.

The internal commands currently implemented include help, man, ls, dir, more, cd, pwd, run, quit and exit.

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commit;h=53daea0916af7b874f830bd0428da2be4e1bc3b3

URL: http://syslinux.zytor.com/wiki/index.php/Read-Only_SHell(rosh.c32)

Simple command module

A simple "cmd" COM32 module, which only echoes a CLI command. This is mostly useful when running on an alternate CLI, e.g. on top of the native gPXE COMBOOT interface.

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commitdiff;h=5241ed1d54a8bb844b0b983dcf03f0de55a20b1d;hp=d0c6656a62113b913948361779d6298fe76f6e61


CPUID updates

Updating the dmi code to detect the most recent CPUs=

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commitdiff;h=b51a2b5df42a803eac6709fb7f06c739b6326aea;hp=9a15270fa5c2b7fc08b023edcf1c3552b583e1d3

Hardware Detection Tool

HDT (stands for "Hardware Detection Tool") is a Syslinux com32 module designed to display low-level information for any x86 compatible system.

HDT can inspect multiple subsystems: CPU (via cpuid), PCI, DMI ( Memory modules, BIOS, Motherboard, IPMI base board, Chassis, Batteries, CPU),

Disks (work in progress), Syslinux, Linux Kernel modules needed, PXE environment, VESA modes

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commit;h=3fba9b8036423fc7a25a8c43e5d136b4f7ceadbc

URL: http://syslinux.zytor.com/wiki/index.php/Hdt_(Hardware_Detection_Tool)

PCI improvements

PCI devices now reports their categories like "IDE interface", "Ethernet controller", ... The resulting strings are found in the pci.ids file.

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commitdiff;h=db3d9fd124f8971e38fb8b44b83f9d739b10ef7e;hp=6d95a9c6ce277173f8cfbc70772fd93a2a41cd66

PCI devices can reports multiple kernel modules for a single device.

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commitdiff;h=0f106fd324fd22e42fbc6ded1b088ec982d4933f;hp=5209894429f09bba73a6545d1d495fc9279a7147

Memdisk improvements

If a "large floppy" image is formatted with a FAT filesystem, we can use the headers in the FAT image to derive the geometry.

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commitdiff;h=3ec9e0ec1012ff5699d0dd68f4926e36e62cfe3a;hp=bf366cd045b9abaf52f7f1c83d603e8e34cbe9ce


Shuffler Improvements

In some cases, the shuffling code was unable to manage hudge files preventing system to boot.

commits:

http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commitdiff;h=86981dec7307fd10f98410561107bde5bff7e10b

http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commitdiff;h=0921ae9c9014dcf6f7319567f52e9a1923bba708

Quiet mode

Suppress the Loading... prompt if "quiet" is specified on the command line.

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commit;h=ff78e2b62a45f18c0d427153f957d2f06c0f5c1c

Memory hole management

Prior to that release, if we found a memory hole, we simply don't use the memory beyond that point. This makes it possible for com32 modules to use that memory. After this, we should be able to add relocation support to allow loading when the memory at 1 MB is unavailable.

commit: http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commit;h=175d813554b69e2883f5bd5eec5eb86a8a0118b7

Thanks

The Syslinux project thanks contributors that made this new release existing : Hans Peter Anvin, Gene Cumm, Vincente Jimenez Aguilar, Sebastian Herbszt, Michael Brown, Shao Miller, Pierre-Alexandre Meyer, Erwan Velu and all pre-release testers.