profile/ivi/syslinux.git
16 years agogen-id: only truncate tags starting with syslinux-<version>-
H. Peter Anvin [Tue, 15 Jul 2008 23:10:46 +0000 (16:10 -0700)]
gen-id: only truncate tags starting with syslinux-<version>-

If git-describe comes up with a tag not starting with
syslinux-<version>- then leave it as-is.

16 years agoUse "git describe" in generating build signatures
H. Peter Anvin [Tue, 15 Jul 2008 23:06:14 +0000 (16:06 -0700)]
Use "git describe" in generating build signatures

We got rid of the 10-character limitation a long time ago, so we might
as well use "git describe" in generating the build signatures.

16 years agoReformat overwide comment
H. Peter Anvin [Tue, 15 Jul 2008 16:53:47 +0000 (09:53 -0700)]
Reformat overwide comment

16 years agoNEWS: KEYMAP -> KBDMAP
H. Peter Anvin [Mon, 14 Jul 2008 20:40:54 +0000 (13:40 -0700)]
NEWS: KEYMAP -> KBDMAP

16 years agokeymap, font: use readc, so we can handle indeterminate file sizes syslinux-3.71-pre10
H. Peter Anvin [Mon, 14 Jul 2008 19:44:21 +0000 (12:44 -0700)]
keymap, font: use readc, so we can handle indeterminate file sizes

The keymap and font commands still assumed that we knew the file size,
which is no longer true.  Fix that by instead using "readc" and
checking the CF.

16 years agogetc: add "readc" function to do block reads
H. Peter Anvin [Mon, 14 Jul 2008 19:43:50 +0000 (12:43 -0700)]
getc: add "readc" function to do block reads

Add "readc" function to do block reads.  Currently it just does a loop
around "call getc/stosb".

16 years agoconio: jump to loadkeys_ret in loadkeys if size not 256 bytes syslinux-3.71-pre9
Sebastian Herbszt [Mon, 14 Jul 2008 15:04:02 +0000 (17:04 +0200)]
conio: jump to loadkeys_ret in loadkeys if size not 256 bytes

Add back jump to loadkeys_ret if the file size was not 256 bytes;
inadvertently deleted when removing DX:AX 16-bitism.

16 years agoDocument unbreaking of KEYMAP syslinux-3.71-pre8
H. Peter Anvin [Sun, 13 Jul 2008 23:09:43 +0000 (16:09 -0700)]
Document unbreaking of KEYMAP

16 years agoFix residual use of DX:AX in the KEYMAP command
H. Peter Anvin [Sun, 13 Jul 2008 23:08:44 +0000 (16:08 -0700)]
Fix residual use of DX:AX in the KEYMAP command

The KEYMAP command still expected length in DX:AX, and so got broken.

16 years agochain.c32: explicitly verify after writing MBR syslinux-3.71-pre7
H. Peter Anvin [Fri, 11 Jul 2008 05:29:49 +0000 (01:29 -0400)]
chain.c32: explicitly verify after writing MBR

If we write the MBR, do verify by reading it back and comparing.
Right now all we do is print an error, though.

16 years agochain.c32: new "hide" option
H. Peter Anvin [Fri, 11 Jul 2008 05:22:15 +0000 (01:22 -0400)]
chain.c32: new "hide" option

Option for chain.c32 to hide primary partitions on the boot drive.

16 years agosyslinux.txt: update; add INITRD
H. Peter Anvin [Thu, 10 Jul 2008 00:33:15 +0000 (20:33 -0400)]
syslinux.txt: update; add INITRD

Add the INITRD statement and a few other updates.

16 years agoDocument fix for RootDir
H. Peter Anvin [Wed, 9 Jul 2008 19:56:42 +0000 (15:56 -0400)]
Document fix for RootDir

16 years agoldlinux: CurrentDir not set if syslinux.cfg is missing
Sebastian Herbszt [Wed, 9 Jul 2008 19:02:39 +0000 (21:02 +0200)]
ldlinux: CurrentDir not set if syslinux.cfg is missing

If a syslinux floppy does not contain a config file (syslinux.cfg) modules are
not being found unless specified with a directory prefix (e.g. /pcitest.c32).
The reason is that CurrentDir is only set if there is a config file present. This is a
possible regression since commit 68eefb79e2cbb590ebf958dd0c50ce00b941abd2.
Before this change RootDir was used in searchdir and now it's CurrentDir unless
the filename starts with '/'. Possible fix is to set CurrentDir to RootDir if no config
file is found.

Actually it seems better to move this to the top of the "check for config file" block.
Initialize CurrentDir to RootDir and change it if a config file is found.

- Sebastian

16 years agoMake version.mk optional, so cleaning commands work syslinux-3.71-pre6
H. Peter Anvin [Mon, 7 Jul 2008 23:11:42 +0000 (16:11 -0700)]
Make version.mk optional, so cleaning commands work

For cleaning commands, we need version.mk to be optional.

16 years agoShare the gen-id stuff between core and memdisk
H. Peter Anvin [Mon, 7 Jul 2008 22:32:21 +0000 (15:32 -0700)]
Share the gen-id stuff between core and memdisk

Both core and memdisk wants to use the gen-id stuff, so let it.

16 years agoCentralize more of the version number machinery
H. Peter Anvin [Mon, 7 Jul 2008 22:21:56 +0000 (15:21 -0700)]
Centralize more of the version number machinery

Centralize more (most) of the version number machinery to version.pl.

16 years agoDrop macros that just point to other macros
H. Peter Anvin [Mon, 7 Jul 2008 22:00:56 +0000 (15:00 -0700)]
Drop macros that just point to other macros

Drop macros for "date" and "version_str", which are nothing but
redefined names of macros we already define (DATE_STR and VERSION).

16 years agocomboot: re-enable the idle call syslinux-3.71-pre5
H. Peter Anvin [Mon, 7 Jul 2008 21:54:53 +0000 (14:54 -0700)]
comboot: re-enable the idle call

Try again to enable the idle call.

16 years agopcitest: display "1 bus found" instead of "1 buses found"
Sebastian Herbszt [Mon, 7 Jul 2008 20:28:16 +0000 (22:28 +0200)]
pcitest: display "1 bus found" instead of "1 buses found"

Fix the text for pci_bus_list->count == 1 ("1 bus found").

- Sebastian

16 years agocomboot: make sure we CLD at all relevant entry points
H. Peter Anvin [Mon, 7 Jul 2008 20:20:05 +0000 (13:20 -0700)]
comboot: make sure we CLD at all relevant entry points

DF is undefined on entry, so make sure we clear it at all entry points
where it could possibly matter.

16 years agocomboot.inc: add missing "section .text"
H. Peter Anvin [Mon, 7 Jul 2008 19:46:48 +0000 (12:46 -0700)]
comboot.inc: add missing "section .text"

16 years agocomboot: save/restore all the DOS vectors; handle a few more
H. Peter Anvin [Mon, 7 Jul 2008 19:43:15 +0000 (12:43 -0700)]
comboot: save/restore all the DOS vectors; handle a few more

- save and restore all the DOS vectors around COMBOOT invocations.
- handle INT 28h and INT 29h, and IRET on INT 2Dh, 2Fh, 33h.

16 years agoInclude the git ID in the build string
H. Peter Anvin [Mon, 7 Jul 2008 19:08:47 +0000 (12:08 -0700)]
Include the git ID in the build string

If we're doing an unofficial build from git, put the git id and a
dirty flag in the build string, instead of a timestamp.  This is a lot
more useful.

16 years agoAllow the initrd to be specified on a separate line syslinux-3.71-pre4
H. Peter Anvin [Fri, 4 Jul 2008 01:45:42 +0000 (18:45 -0700)]
Allow the initrd to be specified on a separate line

Allow the initrd to be specified on a separate line from command-line
options (append).  This apparently can help certain tools.

16 years agoNEWS: handle being the only floppy better.
H. Peter Anvin [Thu, 3 Jul 2008 22:32:39 +0000 (15:32 -0700)]
NEWS: handle being the only floppy better.

16 years agodoc/memdisk.txt: document INT 1Eh fields
H. Peter Anvin [Thu, 3 Jul 2008 22:29:57 +0000 (15:29 -0700)]
doc/memdisk.txt: document INT 1Eh fields

Document the fields to recover the original INT 1Eh vector.

16 years agomemdisk: install a DPT if needed in INT 1Eh; better zero-drive detection
H. Peter Anvin [Thu, 3 Jul 2008 22:22:39 +0000 (15:22 -0700)]
memdisk: install a DPT if needed in INT 1Eh; better zero-drive detection

Per the Interrupt list, treat INT 13 08 returning with CL=0 as a
failure, meaning single drive only.

If we find ourselves the only floppy drive, install a DPT into INT
1Eh.  This appears to be needed for PC-DOS 7.0 to boot.  This can be
overridden with the "nodpt" option, and forced with the "dpt" option.

16 years agomemdisk/version.h: bump copyright year
H. Peter Anvin [Thu, 3 Jul 2008 22:22:18 +0000 (15:22 -0700)]
memdisk/version.h: bump copyright year

2008, not 2007

16 years ago.gitignore: make singleton filenames absolute
H. Peter Anvin [Thu, 3 Jul 2008 22:21:36 +0000 (15:21 -0700)]
.gitignore: make singleton filenames absolute

Ignore, for example, version.h, but not memdisk/version.h

16 years agoextlinux: fix handling of /etc/mtab syslinux-3.71-pre3
H. Peter Anvin [Thu, 3 Jul 2008 02:53:58 +0000 (19:53 -0700)]
extlinux: fix handling of /etc/mtab

When we didn't find the filesystem in /proc/mounts, we would go
through /etc/mtab, but then completely botch the parsing thereof.
Move the parsing to a common function to avoid this problem.

16 years agoSimple menu: really avoid disabled entries syslinux-3.71-pre2
H. Peter Anvin [Thu, 3 Jul 2008 01:34:49 +0000 (18:34 -0700)]
Simple menu: really avoid disabled entries

Really, really try to avoid stepping on disabled entries...

16 years ago3.70 is out, next release is 3.71 syslinux-3.71-pre1
H. Peter Anvin [Tue, 1 Jul 2008 05:23:53 +0000 (22:23 -0700)]
3.70 is out, next release is 3.71

16 years agoNEWS: There never was a 3.64
H. Peter Anvin [Tue, 1 Jul 2008 05:23:05 +0000 (22:23 -0700)]
NEWS: There never was a 3.64

There was no 3.64 release; remove the heading.

16 years agocomboot: issue IRET for INT 2Fh
H. Peter Anvin [Tue, 1 Jul 2008 05:21:47 +0000 (22:21 -0700)]
comboot: issue IRET for INT 2Fh

At least one laptop exists which calls INT 2Fh from inside the BIOS!
So just point INT 2Fh to IRET, and hope that's good enough.

16 years agogPXE: Missing files from gPXE sync syslinux-3.70 syslinux-3.70-pre30
H. Peter Anvin [Mon, 30 Jun 2008 22:34:05 +0000 (15:34 -0700)]
gPXE: Missing files from gPXE sync

Files that should have been added before...

16 years agochain.c32: allow "boot" as a drive specification
H. Peter Anvin [Mon, 30 Jun 2008 22:28:16 +0000 (15:28 -0700)]
chain.c32: allow "boot" as a drive specification

Allow "boot" as the drive specification; this can be used both with
partition numbers and with loaders.

16 years agogPXE: update gPXE to get rid of gpxe/src/Config
H. Peter Anvin [Mon, 30 Jun 2008 19:37:48 +0000 (12:37 -0700)]
gPXE: update gPXE to get rid of gpxe/src/Config

gpxe/src/Config versus gpxe/src/config is a problem on case-deficient
filesystems; update to top of tree gPXE so we don't have that problem
anymore.

16 years agocptable.pl: it seems to make more sense to put console first
H. Peter Anvin [Sun, 29 Jun 2008 02:09:07 +0000 (19:09 -0700)]
cptable.pl: it seems to make more sense to put console first

It seems to make more sense to put the console codepage first, since
it is the more significant of the two codepages.  It also makes more
sense in the from..to sense.

16 years agospec: can't put anything in the /etc directory if it's not there syslinux-3.70-pre29
H. Peter Anvin [Sat, 28 Jun 2008 02:26:42 +0000 (19:26 -0700)]
spec: can't put anything in the /etc directory if it's not there

Make sure we create the /etc directory before putting something there.

16 years agogpxe/Makefile: don't remove gpxelinux.0 for "make dist"
H. Peter Anvin [Sat, 28 Jun 2008 02:20:12 +0000 (19:20 -0700)]
gpxe/Makefile: don't remove gpxelinux.0 for "make dist"

After all, "make dist" is about producing the wrapped binaries for
release.

16 years agoBuild _bin.c files in libinstaller; clean up B/I separation
H. Peter Anvin [Sat, 28 Jun 2008 02:15:00 +0000 (19:15 -0700)]
Build _bin.c files in libinstaller; clean up B/I separation

Clean up the BSUBDIR/ISUBDIR separation further.  Build _bin.c files,
which are an intermediate stage toward building the installers, in the
libinstaller directory, since that directory is used by all the
installers anyway.  That also lets us get bin2c.pl out of the root.

16 years agoFix "make clean", "make installer"
H. Peter Anvin [Sat, 28 Jun 2008 01:47:02 +0000 (18:47 -0700)]
Fix "make clean", "make installer"

- "make clean" should not clean up things that "make installer" cannot
  regenerate.
- "make installer" should not descend into subdirectories which are
  target only, e.g. com32 and sample.

The Linux platform stuff in com32 is old and bitrotted, and was only
for debugging in the first place.  Just ignore it.

16 years agoUpdate gPXE to current git syslinux-3.70-pre28
H. Peter Anvin [Fri, 27 Jun 2008 22:05:14 +0000 (15:05 -0700)]
Update gPXE to current git

There are some build fixes which may be relevant, so pull in the
latest gPXE git.

16 years agogpxe: Separate rules for undionly.kpxe and gpxelinux.0
H. Peter Anvin [Fri, 27 Jun 2008 22:03:13 +0000 (15:03 -0700)]
gpxe: Separate rules for undionly.kpxe and gpxelinux.0

To avoid confusion during subdirectory make, make the undionly.kpxe ->
gpxelinux.0 conversion an explicit rule.

16 years agogPXE: [a20] Send a null command to the KBC after changing A20 syslinux-3.70-pre27
H. Peter Anvin [Fri, 27 Jun 2008 19:56:10 +0000 (12:56 -0700)]
gPXE: [a20] Send a null command to the KBC after changing A20

Send a null command, specifically "pulse outputs" with no outputs
selected, to the KBC after changing A20.  This was apparently done by
DOS, presumably as a synchronization hack, and the authors of the UHCI
spec thought it was inherent.  Therefore, there are systems out there
(e.g. HP DL360 G5) which will stop responsing to "legacy USB" unless
they see the null command, 0xFF, written to port 0x64 at the end of
the A20 toggling sequence.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoisolinux: don't clobber bp in getfssec syslinux-3.70-pre26
H. Peter Anvin [Fri, 27 Jun 2008 01:50:22 +0000 (18:50 -0700)]
isolinux: don't clobber bp in getfssec

The comapi functions get very unhappy if bp is ever clobbered, since
it uses bp as a frame pointer.

16 years agocomboot.doc -> comboot.txt syslinux-3.70-pre25
H. Peter Anvin [Fri, 27 Jun 2008 00:41:52 +0000 (17:41 -0700)]
comboot.doc -> comboot.txt

16 years agoldlinux: handle "first byte E5 change to 05" rule in FAT
H. Peter Anvin [Wed, 25 Jun 2008 20:50:50 +0000 (13:50 -0700)]
ldlinux: handle "first byte E5 change to 05" rule in FAT

FAT has a somewhat obnoxious rule: byte E5 in the first position is
encoded as 05.  If it was *always* that case we could simply fold it
into the codepage tables, but that rule applies only to the first
character.

Note that in the common codepages (incl. 437), E5 is lower-case sigma
(σ), which we currently upper case to upper case sigma (Σ, E4)
preventing a match -- which DOS *doesn't* do (it thinks of the Greek
characters as symbols, not subject to case distinctions.)  Putting
that special case in the codepage-generation scripts seems too ugly,
though.

16 years agocptable: error out on incorrect usage
H. Peter Anvin [Wed, 25 Jun 2008 19:14:05 +0000 (12:14 -0700)]
cptable: error out on incorrect usage

16 years agoAdd more codepage data; support disjoint mappings
H. Peter Anvin [Wed, 25 Jun 2008 19:10:44 +0000 (12:10 -0700)]
Add more codepage data; support disjoint mappings

Add additional codepage data from the Unicode Consortium.
Additionally, add support for generating codepage files for the case
where the filesystem codepage and the display codepage do not match.
The standard Makefile doesn't actually do that, however.

16 years agoextlinux: Fix comment
H. Peter Anvin [Wed, 25 Jun 2008 01:06:09 +0000 (18:06 -0700)]
extlinux: Fix comment

"Bytes left" should be "bytes read"

16 years agomboot.c32: no need to include the ANSI engine syslinux-3.70-pre24
H. Peter Anvin [Tue, 24 Jun 2008 22:28:40 +0000 (15:28 -0700)]
mboot.c32: no need to include the ANSI engine

We don't need the ANSI engine in mboot.c32.

16 years agoNEWS: document newline fix.
H. Peter Anvin [Tue, 24 Jun 2008 22:27:12 +0000 (15:27 -0700)]
NEWS: document newline fix.

16 years agoDefault to \n -> \r\n in ANSI and xserial
H. Peter Anvin [Tue, 24 Jun 2008 22:25:14 +0000 (15:25 -0700)]
Default to \n -> \r\n in ANSI and xserial

Default to \n -> \r\n conversion in the ANSI and xserial modules,
rather than relying on escape codes to make that behave.  This
effectively means that as far as the serial port is concerned, this
behavior cannot be turned off (with less than having the xserial state
machine interpret this sequence) and the escape code *should not* be
used.

That is fine for our applications, though.

16 years agoNEWS: document complex menu system fix syslinux-3.70-pre23
H. Peter Anvin [Tue, 24 Jun 2008 06:18:30 +0000 (23:18 -0700)]
NEWS: document complex menu system fix

16 years agocomplex menu: Fixed bug in menu.c so complex.c32 works again.
Murali Ganapathy [Mon, 23 Jun 2008 06:04:11 +0000 (23:04 -0700)]
complex menu: Fixed bug in menu.c so complex.c32 works again.

Avoid crashing in the presence of unnamed submenus.

16 years agoUgly workaround for bug in GNU ld 2.17
H. Peter Anvin [Tue, 24 Jun 2008 00:21:50 +0000 (17:21 -0700)]
Ugly workaround for bug in GNU ld 2.17

GNU ld 2.17, which is still included with Debian 4.0 (etch),
mishandles PC-relative relocations to an absolute address.  Hack
around it by making pm_entry a segment-relative symbol, completely
unnecessarily so.

16 years agoextlinux: actually fix the closing of a file on EOF syslinux-3.70-pre22
H. Peter Anvin [Mon, 23 Jun 2008 04:25:44 +0000 (21:25 -0700)]
extlinux: actually fix the closing of a file on EOF

Actually close the file properly on EOF, even if not aligned to a
sector boundary.  Sigh.

16 years agoparsecmd: on an unknown keyword, print the unknown keyword syslinux-3.70-pre21
H. Peter Anvin [Mon, 23 Jun 2008 02:11:28 +0000 (19:11 -0700)]
parsecmd: on an unknown keyword, print the unknown keyword

Print the unknown keyword if we run into one.

16 years agoextlinux: fix the end of file condition
H. Peter Anvin [Mon, 23 Jun 2008 02:10:53 +0000 (19:10 -0700)]
extlinux: fix the end of file condition

We would incorrectly not set SI=0 when returning from getfssec upon
end of file.  Fix this.

16 years agoNEWS: Document A20 change syslinux-3.70-pre20
H. Peter Anvin [Fri, 20 Jun 2008 23:12:14 +0000 (16:12 -0700)]
NEWS: Document A20 change

16 years agochain.c32: use a more Linux-kernel-like syntax
H. Peter Anvin [Fri, 20 Jun 2008 23:09:13 +0000 (16:09 -0700)]
chain.c32: use a more Linux-kernel-like syntax

Make the syntax for chain.c32 more Linux-kernel-like.  This also makes
parsing easier, so it's a win all around.

16 years agocore/writedec.inc: fix comment
H. Peter Anvin [Thu, 19 Jun 2008 23:32:57 +0000 (16:32 -0700)]
core/writedec.inc: fix comment

Decimal, not hex...

16 years agocore: add decimal number write routine
H. Peter Anvin [Thu, 19 Jun 2008 18:06:38 +0000 (11:06 -0700)]
core: add decimal number write routine

Add routine to write decimal numbers, currently unused, but likely to
become useful at some time or another.

16 years agochain.c: avoid comma-space in assembly stubs
H. Peter Anvin [Thu, 19 Jun 2008 18:05:06 +0000 (11:05 -0700)]
chain.c: avoid comma-space in assembly stubs

Comma-space takes up too much horizontal space, since we
want to be able to comment properly.

16 years agochain.c32: check the stub sources into the tree
H. Peter Anvin [Thu, 19 Jun 2008 18:00:59 +0000 (11:00 -0700)]
chain.c32: check the stub sources into the tree

Check the stub sources into the tree, even though they aren't used by
the build; they are still useful when experimenting with changing this
stuff.

16 years agoAdd address aliases for freedos and msdos
H. Peter Anvin [Thu, 19 Jun 2008 17:39:44 +0000 (10:39 -0700)]
Add address aliases for freedos and msdos

16 years agochain.c32: minor stylistic cleanup
H. Peter Anvin [Thu, 19 Jun 2008 17:38:15 +0000 (10:38 -0700)]
chain.c32: minor stylistic cleanup

16 years agochain.c: we can't rely on dosmem and int13 in here...
H. Peter Anvin [Thu, 19 Jun 2008 17:36:07 +0000 (10:36 -0700)]
chain.c: we can't rely on dosmem and int13 in here...

dosmem and int13 can change during boot loader shutdown.  It
is therefore unsafe to rely on them retaining their value from
running in chain.c32 itself.  Instead, we have to install a
suitable stub which makes that particular determination at
runtime.  Fortunately that is not all that hard to do.

16 years agochain.c32: support loading DOS kernels
H. Peter Anvin [Thu, 19 Jun 2008 06:43:39 +0000 (23:43 -0700)]
chain.c32: support loading DOS kernels

Support loading files below 0x7c00, as required, for example, by DOS
kernels.  Furthermore, pass the drive number in BL as well as DL.

With this, we can load the FreeDOS kernel with:

     chain.c32 hd0 -seg 0x60 -file /kernel.sys

Should really clean up the syntax before 3.70 final, though, and
provide a way to default to the syslinux device.

16 years ago<syslinux/bootrm.h>: fix order of SS and DS
H. Peter Anvin [Thu, 19 Jun 2008 06:42:47 +0000 (23:42 -0700)]
<syslinux/bootrm.h>: fix order of SS and DS

SS is segment 2, DS is segment 3; this header had them backwards.
Fortunately not too many things relied on having DS != SS.

16 years agoTEST: issue a null command to the KBC as part of A20-flipping syslinux-3.70-pre19
H. Peter Anvin [Wed, 18 Jun 2008 16:05:33 +0000 (09:05 -0700)]
TEST: issue a null command to the KBC as part of A20-flipping

UHCI supposedly wants a null command (0FFh) sent to the KBC as part of
the A20-flipping sequence.  See if that works for us.

16 years agocodepage: strip accents during shortname upper-casing
H. Peter Anvin [Mon, 16 Jun 2008 07:18:48 +0000 (00:18 -0700)]
codepage: strip accents during shortname upper-casing

If we don't have a direct upper-case equivalent to a character, but we
*do* have the "naked" version of the upper-case character (defined as
the first character of the canonical Unicode decomposition of the
case-mapped character), then use it for the intracodepage table (used
for shortnames.)  This matches DOS behaviour.  No obvious way, yet, to
handle the fact that DOS doesn't uppercase the lowercase sigma, but
that's not a huge problem; besides, lowercase sigma is mapped to
position 0xE5, which would require dealing with the special handling
of this character in the first position.

16 years agocodepage: include case variant characters in UnicodeData
H. Peter Anvin [Mon, 16 Jun 2008 07:07:23 +0000 (00:07 -0700)]
codepage: include case variant characters in UnicodeData

Adjust the gensubset.pl script to that all case variants are
explicitly included in UnicodeData.

16 years agoTODO: remove obsolete items
H. Peter Anvin [Mon, 16 Jun 2008 06:55:30 +0000 (23:55 -0700)]
TODO: remove obsolete items

16 years agochain.c32: finalize the NTLDR interface syslinux-3.70-pre18
H. Peter Anvin [Mon, 16 Jun 2008 00:05:37 +0000 (17:05 -0700)]
chain.c32: finalize the NTLDR interface

Settle on a final implementation of the NTLDR support.

16 years agoloadfile: make sure we don't trash errno
H. Peter Anvin [Mon, 16 Jun 2008 00:03:18 +0000 (17:03 -0700)]
loadfile: make sure we don't trash errno

Make sure we don't trash a useful value in errno.

16 years agowritestr_early: save/restore registers
H. Peter Anvin [Sun, 15 Jun 2008 17:43:14 +0000 (10:43 -0700)]
writestr_early: save/restore registers

We have made it this far without it, but it seems like a disaster
waiting to happen.  We can afford the extra four bytes in sector 1.

16 years agoFix bogus instances of writestr_early
H. Peter Anvin [Sun, 15 Jun 2008 17:42:01 +0000 (10:42 -0700)]
Fix bogus instances of writestr_early

Fix a set of bogus calls to writestr_early instead of writestr.

16 years agoMechanically rename the writestr functions
H. Peter Anvin [Sun, 15 Jun 2008 17:37:10 +0000 (10:37 -0700)]
Mechanically rename the writestr functions

Mechanically rename the writestr functions:

writestr   -> writestr_early
cwritestr  -> writestr

... to reflect which function is more appropriate to call in normal
circumstances.

16 years agogpxe: update gpxe to latest git
H. Peter Anvin [Fri, 13 Jun 2008 23:20:05 +0000 (16:20 -0700)]
gpxe: update gpxe to latest git

16 years agoMake it explicit that Windows need -swap, even XP :(
H. Peter Anvin [Fri, 13 Jun 2008 21:34:55 +0000 (14:34 -0700)]
Make it explicit that Windows need -swap, even XP :(

16 years agopci: fix off-by-one error and introduce MAX_PCI_FUNC
Sebastian Herbszt [Wed, 11 Jun 2008 20:53:01 +0000 (22:53 +0200)]
pci: fix off-by-one error and introduce MAX_PCI_FUNC

In include/sys/pci.h we have

#define MAX_PCI_BUSES 255

and

struct pci_bus_list {
        struct pci_bus pci_bus[MAX_PCI_BUSES];
        uint8_t count;
};

And in lib/pci/scan.c

for (bus = 0; bus <= MAX_PCI_BUSES; bus++) {

    pci_bus_list->pci_bus[bus].pci_device_count = 0;

Fix possible overflows and introduce MAX_PCI_FUNC.

- Sebastian

16 years agochain.c32: don't swap drives when already primary syslinux-3.70-pre17
H. Peter Anvin [Fri, 13 Jun 2008 00:44:59 +0000 (17:44 -0700)]
chain.c32: don't swap drives when already primary

Don't install the swap stub when we are already the primary drive,
even if -swap is specified.

16 years agoNEWS: Document new chain.c32 features.
H. Peter Anvin [Fri, 13 Jun 2008 00:43:00 +0000 (17:43 -0700)]
NEWS: Document new chain.c32 features.

16 years agochain.c32: support swapping BIOS drive numbers
H. Peter Anvin [Fri, 13 Jun 2008 00:41:08 +0000 (17:41 -0700)]
chain.c32: support swapping BIOS drive numbers

Support installing a stub to swap BIOS drive numbers.

16 years agochain: use shuffle API; support loading a boot file
H. Peter Anvin [Fri, 13 Jun 2008 00:11:42 +0000 (17:11 -0700)]
chain: use shuffle API; support loading a boot file

Use the shuffle API, and support loading a boot file instead of the
standard boot sector.  This should be able to load NTLDR.

16 years agoNEWS: update the blurb about the new MEMDISK geometry stuff.
H. Peter Anvin [Thu, 12 Jun 2008 23:48:00 +0000 (16:48 -0700)]
NEWS: update the blurb about the new MEMDISK geometry stuff.

16 years agofdgeo.pl: exit values; fix division by zero
H. Peter Anvin [Tue, 10 Jun 2008 23:36:30 +0000 (16:36 -0700)]
fdgeo.pl: exit values; fix division by zero

Return exit values to go with the error messages; don't divide by zero
in case of range error.

16 years agoFix DOS interrupt error messages syslinux-3.70-pre16
H. Peter Anvin [Tue, 10 Jun 2008 23:32:00 +0000 (16:32 -0700)]
Fix DOS interrupt error messages

16 years agoWhen erroring out on an DOS interrupt, print info
H. Peter Anvin [Tue, 10 Jun 2008 23:15:23 +0000 (16:15 -0700)]
When erroring out on an DOS interrupt, print info

Print the interrupt number, AX, and CS:IP of the offending system
call.

16 years agoldlinux: search_dos_dir returns attributes in DL syslinux-3.70-pre15
H. Peter Anvin [Tue, 10 Jun 2008 22:40:11 +0000 (15:40 -0700)]
ldlinux: search_dos_dir returns attributes in DL

search_dos_dir returns attributes in DL, so we shouldn't push/pop DX
around this function!

16 years agoAdd *.cp to .gitignore
H. Peter Anvin [Tue, 10 Jun 2008 19:17:08 +0000 (12:17 -0700)]
Add *.cp to .gitignore

16 years agoAdd file missing from previous checkin
H. Peter Anvin [Tue, 10 Jun 2008 17:20:36 +0000 (10:20 -0700)]
Add file missing from previous checkin

Add file missing from checkin 012d53b0453ac7a5ec03fb802434fe64e6f85bf5

16 years agoWhitespace cleanup
H. Peter Anvin [Mon, 9 Jun 2008 23:32:09 +0000 (16:32 -0700)]
Whitespace cleanup

16 years agoPXELINUX: Enable idle calls on select platforms
H. Peter Anvin [Mon, 9 Jun 2008 23:16:31 +0000 (16:16 -0700)]
PXELINUX: Enable idle calls on select platforms

Enable idle calls on select platforms, based on device ID.
In particular, certain Broadcom chips need them to avoid FIFO stalls.

16 years agoFAT: make all codepage data derived from the same place
H. Peter Anvin [Mon, 9 Jun 2008 19:21:05 +0000 (12:21 -0700)]
FAT: make all codepage data derived from the same place

Make the codepage data all derive from the Unicode tables, and create
files that could be dynamically loaded in the future.

16 years agoNEWS: remove redundant clause
H. Peter Anvin [Sat, 7 Jun 2008 21:46:44 +0000 (14:46 -0700)]
NEWS: remove redundant clause

16 years agoMEMDISK: algorithmic determination of floppy formats
H. Peter Anvin [Sat, 7 Jun 2008 21:39:01 +0000 (14:39 -0700)]
MEMDISK: algorithmic determination of floppy formats

Consider all disks < 4 MB to be floppies, and guess their geometry
algorithmically.