e290fe8b68d6cada67f20823281cb6b4f670655f
[profile/ivi/syslinux.git] / NEWS
1 Starting with 1.47, changes marked with SYSLINUX/PXELINUX/ISOLINUX
2 apply to that specific program only; other changes apply to both.
3
4 Changes in 1.65:
5         * ISOLINUX: Support booting disk image files (to boot DOS or
6           other non-Linux operating systems), *IF* the BIOS works
7           correctly; unfortunately many BIOSes apparently don't.
8         * Support Linux boot protocol version 2.03 (explicitly
9           specify the initrd address limit.)
10         * Handle small "pseudo-kernels"; images that use the Linux
11           kernel boot protocols but are less than 64K in size.
12         * MEMDISK: New subsystem; this is a driver which allows
13           legacy OSes to boot using an in-memory simulated disk.
14           See memdisk/memdisk.doc for more info.
15         * PXELINUX, ISOLINUX: Correctly handle files larger than 65535
16           blocks (32 MB for PXELINUX, 128 MB for ISOLINUX.)
17         * PXELINUX: Make a best-effort attempt at freeing all memory
18           claimed.  From the looks of it, it will fail on most PXE
19           stacks.
20
21 Changes in 1.64:
22         * Limited support for hardware flow control when using a
23           serial port console.
24         * Support specifying the serial port I/O address explicitly.
25         * Make DOS installer hopefully behave more nicely when used on
26           recent Windows versions.
27         * Fix returning to text mode when a font has been specified.
28         * Attempt to detect missing serial port hardware and disable
29           the serial port if there is nothing there.
30
31 Changes in 1.63:
32         * Make the ppmtolss16 program handle color conversion more
33           correctly.
34         * Clean up "make install" target, honour INSTALLROOT if it
35           exists.
36         * SYSLINUX: Fix stack-smash bug identified by Steffen
37           Winterfeldt.
38         * Hopefully fix return-to-text-mode on some graphics cards.
39         * ISOLINUX: Bug workaround for Award BIOS 4.51, and perhaps
40           other buggy BIOSes as well.
41
42 Changes in 1.62:
43         * PXELINUX: Allow the DHCP server to override the
44           configuration file name and pathname prefix, using
45           "site-specific" DHCP options.
46         * PXELINUX: Documentation fixes.
47         * PXELINUX: Fix the "ipappend" option; the last two values
48           were reversed vs. what the kernel expected.
49         * Introduce a way to return to text mode once we are already
50           in graphics mode.  This may be useful for F-key help
51           screens.
52         * Fix several bugs in the way return to text mode was handled.
53
54 Changes in 1.61:
55         * ISOLINUX: Support full pathname searches.  Max length for a
56           pathname is 255 characters.  As a result, only 64 "label"
57           statements are supported in ISOLINUX.
58         * PXELINUX: Max filename length extended to 63 characters.
59
60 Changes in 1.60:
61         * Add support for graphical splash screens.
62         * Add mode control characters, which allows you to control
63           message display output depending on output mode (text,
64           graphics, or serial port.)
65         * ISOLINUX: New program, which boots Linux from a CD-ROM
66           without using floppy emulation mode.  See isolinux.doc for
67           more details.
68         * PXELINUX: Don't search for boot sector file types, since
69           they don't work anyway.
70         * SYSLINUX: Document the LOCK command for Win9x, and the error
71           dialog box for WinNT/2K.
72
73 Changes in 1.54:
74         * PXELINUX: Fix code for finding !PXE from PXENV+.  This was
75           due to a spec bug; match the most recent spec since that
76           seems to be what implementations actually do.
77         * SYSLINUX: Add some smarts to the boot sector, which
78           hopefully should reduce the number of systems which require 
79           stupid mode ("syslinux -s").
80         * PXELINUX: Document further some of the pathologies with old
81           PXE stacks.
82         * When specifying a "default" command line, no longer
83           automatically appent "auto".  See the "DEFAULT" command in
84           syslinux.doc for more information.
85         * PXELINUX: Clean up the allocation of local socket numbers.
86
87 Changes in 1.53:
88         * PXELINUX: Rename pxelinux.bin to pxelinux.0, to match what
89           most PXE servers seem to expect.
90         * PXELINUX: Update the DHCP/boot server setup documentation.
91         * PXELINUX: Support new "localboot" option for "label"
92           sections.
93         * PXELINUX: More robust parsing of DHCP/boot server packets.
94         * PXELINUX: Include a small utility program "gethostip" to
95           compute hexadecimal IP addresses.
96
97 Changes in 1.52:
98         * PXELINUX: Fix bugs introduced by new A20 code.  (SYSLINUX
99           has also been changed for code consistency reasons, but I'm
100           pretty sure the changes are don't care on SYSLINUX.)
101         * Documentation updates.
102         * PXELINUX: Add "ipappend" option to generate an ip= option to
103           the kernel.
104
105 Changes in 1.51:
106         * PXELINUX: Not all PXE stacks fill in the IP address for a
107           type 3 cached info query.  Use a type 2 cached info query
108           for this information (only.)
109         * Yet another attempt at A20 coding.  Now support BIOS call
110           15:2401 as well, and handle machines which always have A20
111           on separately.
112         * Support memory detection using INT 15h, AX=0E820h.  BIOS
113           manufacturers have apparently gotten sloppy about keeping
114           INT 15h, AX=0E801h working properly.
115         * Don't issue <CR><LF> onto the serial port when we're doing
116           screen wraparound.
117
118 Changes in 1.50:
119         * Yet another A20-code update.  It seems some "legacy-free"
120           machines and embedded gear simply don't have a KBC to talk
121           to, and that waiting for one will wait forever.  Sigh.
122
123 Changes in 1.49:
124         * SYSLINUX: Implement a hack for BIOS drivers which hog significant
125           chunks of low memory during boot.  (Note: PXELINUX already
126           had this modification.  SYSLINUX does still require that the
127           low 512K is available; PXELINUX requires 384K.  Machines
128           with a physical memory hole in the low 640K cannot boot
129           Linux no matter what.)  Depending what the reason is for the
130           memory hole, a new kernel (2.4.0-test3-pre3 or later) may be
131           required.
132         * SYSLINUX: Default installer binary now compiled against
133           glibc 2.1.  If this is inappropriate for your system and you
134           still want to use the offical version of SYSLINUX, please
135           follow the instructions in "distrib.doc" to rebuild the
136           installer.
137         * SYSLINUX: Linux installer program now supports -o <offset>
138           option which does a loopback mount with the
139           -o loop,offset=<> option.  Useful to run SYSLINUX on an
140           individual partition of a whole-harddisk image.
141         * Include the source code to a Master Boot Record (MBR)
142           functionally equivalent to the one installed DOS except it
143           includes EBIOS support, and should be resistant to geometry
144           changes.  The MBR code is public domain.
145         * PXELINUX: Fix "double p" bug: if the tftp prefix was null,
146           all filenames would get a "p" preprended, e.g.
147           "ppxelinux.cfg" and "pvmlinux".
148
149 Changes in 1.48:
150         * PXELINUX: Workaround for PXE ROMs based on the Intel PXE PDK
151           3.0 build 071 and earlier: missing !PXE structure pointer.
152         * PXELINUX: Handle larger BOOTP/DHCP packages.
153         * PXELINUX: The command line passing was broken; fix.
154         * PXELINUX: Make COMBOOT images work.
155         * PXELINUX: Documentation on how to make booting work using
156           the PDK 3.0-derived clients, which aren't so generous as to
157           allow booting with only "PXEClient" specified.
158
159 Changes in 1.47:
160         * PXELINUX: RFC 1123 states that a TFTP implementation MUST
161           use adaptive timeout, "at least an exponential backoff of
162           retransmission timeout is necessary."  Implement a very
163           simple exponential backoff for retransmits.
164         * PXELINUX: Updated documentation, including pointer to new
165           TFTP server.
166         * PXELINUX: When sending ERROR due to bad OACK, use the proper
167           destination port number (why are TFTP port numbers so odd?)
168         * PXELINUX: If the boot dies in the middle somewhere,
169           eventually give up and reset the machine (unattended
170           operation.)
171
172 Changes in 1.46:
173         * New program PXELINUX to do network booting using a
174           PXE-compliant (Pre-Execution Environment) network booting
175           PROM.  See pxelinux.doc for details.
176
177 Changes in 1.45:
178         * Serial console support.  See syslinux.doc for details.
179
180 Changes in 1.44:
181         * Change HIGHMEM_MAX to 38000000h to (hopefully) avoid the
182           kernel stepping on it; 3f000000h was apparently a higher
183           limit than the kernel used!
184
185 Changes in 1.43:
186         * Add sys2ansi.pl script to display the contents of a
187           colorized SYSLINUX file.
188         * Changed the io_delay once again, after a report that the
189           old delay port causes hangs on some systems.
190
191 Changes in 1.42:
192         * Frob the "fast A20 gate" port as well as the keyboard
193           controller; will this help systems with problems?
194         * Be even more paranoid about A20, unfortunately even this
195           seems to be not paranoid enough... what I don't understand
196           is that if there is hardware out there *this broken*, how
197           can it run Linux at all?  Report an error message rather
198           than hang forever if A20 is stuck.
199         * Include some intermediate files in the distribution, plus
200           provide a "make installer" target for distributors to relink
201           the install programs only.  I would prefer the syslinux boot
202           loader proper to be "binary clean" for debuggablity -- use
203           "make clean ; make installer" to rebuild the installers only.
204
205 Changes in 1.41:
206         * Don't get confused by directories, volume labels, or VFAT
207           long names.
208         * Use INT 15h, AX=0E801h to query memory size before trying
209           INT 15h, AH=88h.  This not only provides more headroom
210           between the kernel and the initrd on large-memory machines,
211           but it appears some recent BIOSes actually have started
212           returning garbage for the AH=88h (older) call.
213         * Trust high memory beyond the 15 MB mark if the user has
214           specified it, or if obtained with INT 15h, AH=0E801h (with
215           no memory holes above 1 MB.)
216
217 Changes in 1.40:
218         * Increase A20M delay and put in a test to avoid problems on
219           certain IBM Thinkpads (thanks to Donnie Barnes of RedHat
220           for vital info on this one.)
221         * Support COMBOOT style boot command images.
222         * Support chain loading (foreign operating systems, e.g. DOS).
223         * Include a new "copybs" DOS utility to copy a boot sector to
224           a file (under Linux, use "dd".)
225         * Fix the DOS installer to work for disks over 32 MB.
226         * SYSLINUX should now handle disks with more than 65536 tracks.
227
228 Changes in 1.37:
229         * Fix a bug that caused "label" statements in syslinux.cfg to
230           not be handled properly.
231         * Updated the documentation.  Among other things, we now allow
232           up to 128 "label" statements.
233
234 Changes in 1.36:
235         * Fix for booting old (pre-initrd) kernels.
236         * It seems at least some versions of OS/2 doesn't set up all
237           the fields in the superblock correctly.  Account for that.
238         * Fix bug that caused boot failure when using the mem= option.
239
240 Changes in 1.35:
241         * Loading from partitions now should work properly.  (Actually
242           tested, this time.  You should even be able to dd a floppy
243           to a partition and boot from it.)
244         * Removed large workaround code for an alleged ancient BIOS
245           bug I have never actually seen.  The -s option should work
246           on those machines, anyway.
247         * Support for simple keyboard remappings, same as used by
248           LILO (once again to support localization.)  The program
249           keytab-lilo.pl from the LILO distribution included to
250           generate such maps.
251         * Added a "safe, slow and stupid" (-s) option to the
252           installers.  This option will lobotomize the boot sector to
253           hopefully work on even very buggy BIOSes.
254         
255 Changes in 1.34:
256         * Ability to load a VGA font on bootup (for localized Linux
257           distributions.) 
258
259 Changes in 1.33:
260         * Bug fix in the Linux installer.
261         * Added a workaround for a bug in certain AMI/Intel BIOSes
262           when booting from CD-ROM.
263         * Documentation changes.
264
265 Changes in 1.32:
266         * FAT16 filesystems are now supported.
267
268 Changes in 1.31:
269         * Now compiles under Linux, using NASM, rather than using
270           Turbo Assembler under DOS.  See http://www.cryogen.com/Nasm
271           for information about NASM.
272         * Linux-hosted SYSLINUX installer, as well as a
273           rewritten DOS installer (now is written in assembler, so we
274           don't need Turbo C.)
275
276 Changes in 1.30:
277         * Added support for loading bzImage and initrd loading, and made
278           SYSLINUX new-setup-code aware (SYSLINUX 1.30 id=0x31).
279         * Added LILO-style kernel labels; see the LABEL and IMPLICIT
280           keywords in README file.
281         * Added support for colorization of intro and help screens.
282         * The vga= option is now handled correctly.
283         * Massive rewrite of large chunks of the code in order to
284           support the first two new features.
285
286 Changes in 1.20:
287         * Added simple online help at the "boot:" prompt.
288         * Removed 2880K image as I no longer have access to such a
289           floppy drive.  (Donations accepted!!)
290         * Decided to distribute the source in a subdirectory rather
291           than in a nested zipfile.
292
293 Changes in 1.11:
294         * Removed a sanity check which would cause booting to fail on
295           Phoenix BIOS version 4.03.  Apparently this BIOS is buggy.
296
297 Changes in 1.10:
298         * Added configuration file SYSLINUX.CFG.  This file contains all
299           configurable options, and can be edited from any OS which can
300           access an MS-DOS filesystem; there is no longer a need to run
301           SYSLINUX.EXE except to write the boot sector.
302         * Default command line now given by "default" line in config
303           file.
304         * LINUXMSG.TXT and BOOTMSG.TXT hard-coded file names replaced by
305           "display" and "prompt" lines in config file.
306         * LILO-style option appending now supported ("append" line in
307           config file).
308         * Prompt timeout is now supported ("timeout" line in config
309           file).  The timeout is cancelled when anything is typed on the
310           command line.
311         * Pressing <ESC> or <Ctrl-C> at the Loading... stage now aborts
312           the kernel loading in progress and returns the user to the
313           boot: prompt.
314         * The installer now automatically sets the READONLY flag on
315           LDLINUX.SYS.
316         * Added 2880K disk image.
317
318 Changes in 1.03:
319         * Fixed bug that would prevent booting from double-density
320           floppies and other DOS filesystems with multiple sectors per
321           cluster.
322         * Added 720K disk image.
323         * Changed default kernel name on disk images to LINUX.
324
325 Changes in 1.02:
326         * Fixed bug that would garble the command line on recent kernels
327           with more than 4 sectors of setup code (this wasn't really a
328           *bug*; rather, a kernel change broke the code.  Unfortunately
329           the Linux boot interface is still sorely undocumented).
330         * Added BOOTMSG.TXT file support (message file which does not
331           force display of the boot prompt).
332
333 Changes in 1.01:
334         * Fixed bug on some (most?) 386 BIOSes would require two boot
335           attempts.