profile/ivi/syslinux.git
16 years agombr: save another 5 bytes by terminating error on newline syslinux-3.61-pre4
H. Peter Anvin [Tue, 22 Jan 2008 22:52:47 +0000 (14:52 -0800)]
mbr: save another 5 bytes by terminating error on newline

Save another 5 bytes by making the newline character do double duty as
newline and string terminator.

16 years agombr.S: save one more byte syslinux-3.61-pre3
H. Peter Anvin [Tue, 22 Jan 2008 22:35:51 +0000 (14:35 -0800)]
mbr.S: save one more byte

%ax is set to zero at the top; we then set it to 0x4100, so we only
need to change %ah, not all of %ax.

16 years agoAdvanced menu: update #include path
H. Peter Anvin [Thu, 17 Jan 2008 06:37:32 +0000 (01:37 -0500)]
Advanced menu: update #include path

16 years agoISOLINUX: fix booting when mastered with non-mkisofs tools syslinux-3.61-pre2
H. Peter Anvin [Thu, 17 Jan 2008 06:14:57 +0000 (01:14 -0500)]
ISOLINUX: fix booting when mastered with non-mkisofs tools

When we are *not* mastered with mkisofs, we depend on running the
checksumiso.pl script, in order to create a default boot info table.
Due to the Makefile changes in 3.50 (commit
9e3d217ee3869e4f4ddb1466621c079e14754660) that hasn't happened since
3.50-pre23.

Make it work now.

16 years agoNext version is 3.61 syslinux-3.61-pre1
H. Peter Anvin [Wed, 16 Jan 2008 18:07:35 +0000 (10:07 -0800)]
Next version is 3.61

16 years agoEXTLINUX: correct bug when accessing an empty file; update NEWS.
H. Peter Anvin [Wed, 16 Jan 2008 18:00:32 +0000 (13:00 -0500)]
EXTLINUX: correct bug when accessing an empty file; update NEWS.

Correct a bug that caused EXTLINUX to crash when accessing an empty
file.

16 years agoStandardize format for copyright lines and update
H. Peter Anvin [Wed, 16 Jan 2008 17:50:49 +0000 (12:50 -0500)]
Standardize format for copyright lines and update

Update copyright lines and standardize the format.

16 years agoelf.c32: a PHDR segment is loadable; handle filesz > memsz
H. Peter Anvin [Tue, 15 Jan 2008 20:14:03 +0000 (15:14 -0500)]
elf.c32: a PHDR segment is loadable; handle filesz > memsz

PHDR segments are equal to LOAD segments as far as the loader is
concerned.  Also handle the case of filesz > memsz (by ignoring the
additional data.)

16 years agoSHA1 passwords: initialize the context before salting
Jeffrey Hutzelman [Tue, 15 Jan 2008 03:34:08 +0000 (22:34 -0500)]
SHA1 passwords: initialize the context before salting

Need to initialize the SHA-1 context before we add the salt.

16 years agoadv: clean up NASM 2.01 warning
H. Peter Anvin [Fri, 11 Jan 2008 22:18:41 +0000 (14:18 -0800)]
adv: clean up NASM 2.01 warning

16 years agoMakefile: remove old cruft
H. Peter Anvin [Fri, 11 Jan 2008 22:18:24 +0000 (14:18 -0800)]
Makefile: remove old cruft

16 years agoMerge commit 'syslinux-3.55' into adv syslinux-3.60
H. Peter Anvin [Fri, 11 Jan 2008 06:42:00 +0000 (22:42 -0800)]
Merge commit 'syslinux-3.55' into adv

16 years agospecfile: install the man pages into %{_mandir} syslinux-3.55
H. Peter Anvin [Fri, 11 Jan 2008 06:39:33 +0000 (22:39 -0800)]
specfile: install the man pages into %{_mandir}

16 years agoFix the handling of man pages in the specfile.
H. Peter Anvin [Fri, 11 Jan 2008 06:37:06 +0000 (22:37 -0800)]
Fix the handling of man pages in the specfile.

16 years agoMerge commit 'origin/master' into adv
H. Peter Anvin [Thu, 10 Jan 2008 19:16:16 +0000 (11:16 -0800)]
Merge commit 'origin/master' into adv

Conflicts:

extlinux/extlinux.c

16 years agoUpdate copyright year
H. Peter Anvin [Thu, 10 Jan 2008 19:13:57 +0000 (11:13 -0800)]
Update copyright year

16 years agoMerge commit 'origin/master' into adv
H. Peter Anvin [Thu, 10 Jan 2008 03:07:30 +0000 (19:07 -0800)]
Merge commit 'origin/master' into adv

16 years agoMove rfc5071.txt into the doc directory
H. Peter Anvin [Thu, 10 Jan 2008 03:06:25 +0000 (19:06 -0800)]
Move rfc5071.txt into the doc directory

Documentation file needs to go in the doc directory...

16 years agoUnconditionally reset the ADV if we don't have one loaded from a medium syslinux-3.60-pre8
H. Peter Anvin [Mon, 7 Jan 2008 23:13:59 +0000 (15:13 -0800)]
Unconditionally reset the ADV if we don't have one loaded from a medium

For non-extlinux derivatives, unconditionally initialize the in-memory
ADV to blank.

16 years agoUse the proper register when initializing a new ADV
H. Peter Anvin [Mon, 7 Jan 2008 23:09:25 +0000 (15:09 -0800)]
Use the proper register when initializing a new ADV

16 years agoADVSec0/1 are dwords, not bytes...
H. Peter Anvin [Mon, 7 Jan 2008 22:16:17 +0000 (14:16 -0800)]
ADVSec0/1 are dwords, not bytes...

16 years agoMerge commit 'syslinux-3.55-pre4' into adv syslinux-3.60-pre7
H. Peter Anvin [Sat, 5 Jan 2008 00:34:40 +0000 (16:34 -0800)]
Merge commit 'syslinux-3.55-pre4' into adv

16 years agoHandle vga={ask|normal|ext} in linux.c32 syslinux-3.55-pre4
H. Peter Anvin [Sat, 5 Jan 2008 00:24:11 +0000 (16:24 -0800)]
Handle vga={ask|normal|ext} in linux.c32

linux.c32 didn't handle vga={ask|normal|ext}, fix that.

16 years agoFix incorrect handling of overlapping memory areas in bcopy32 syslinux-3.55-pre3
H. Peter Anvin [Fri, 4 Jan 2008 04:32:11 +0000 (20:32 -0800)]
Fix incorrect handling of overlapping memory areas in bcopy32

bcopy32 had the test for forwards vs. backwards copy backwards, which
of course resulted in disaster when memory areas actually overlapped
themselves.

16 years agoAdd simple module to load and run a protected-mode raw binary
H. Peter Anvin [Thu, 3 Jan 2008 23:03:35 +0000 (15:03 -0800)]
Add simple module to load and run a protected-mode raw binary

16 years agoDocument options to the syslinux command
Geert Stappers [Tue, 11 Dec 2007 08:31:37 +0000 (09:31 +0100)]
Document options to the syslinux command

Document options to the syslinux command (for doc/syslinux.doc).

16 years agospecfile: Manual pages are usually not tagged %doc
H. Peter Anvin [Wed, 19 Dec 2007 00:14:41 +0000 (16:14 -0800)]
specfile: Manual pages are usually not tagged %doc

16 years agoMerge commit 'origin/master' into adv syslinux-3.60-pre6
H. Peter Anvin [Tue, 18 Dec 2007 23:58:13 +0000 (15:58 -0800)]
Merge commit 'origin/master' into adv

16 years agoMove doc files to doc/, and add man pages from Debian syslinux-3.55-pre2
H. Peter Anvin [Tue, 18 Dec 2007 23:55:10 +0000 (15:55 -0800)]
Move doc files to doc/, and add man pages from Debian

Move all the text documentation to the doc/ directory, add man pages
from the Debian syslinux package, and rename sys2ansi.pl to
syslinux2ansi.pl.

16 years agoHigher confidence in the harmlessness of the ADV code syslinux-3.60-pre5
H. Peter Anvin [Tue, 18 Dec 2007 22:28:13 +0000 (14:28 -0800)]
Higher confidence in the harmlessness of the ADV code

Make more sure that the ADV code is harmless when the current
derivative doesn't support it.

16 years agoDocument the EXTLINUX ADV commands.
H. Peter Anvin [Tue, 18 Dec 2007 22:24:08 +0000 (14:24 -0800)]
Document the EXTLINUX ADV commands.

16 years agoUpdate ADV documentation in comboot.doc
H. Peter Anvin [Fri, 14 Dec 2007 23:33:15 +0000 (15:33 -0800)]
Update ADV documentation in comboot.doc

16 years agoAdd missing libinstaller files syslinux-3.60-pre4
H. Peter Anvin [Fri, 14 Dec 2007 23:14:10 +0000 (15:14 -0800)]
Add missing libinstaller files

Files missing from previous checkin, sigh.

16 years agoDocument ADV and its stuff
H. Peter Anvin [Fri, 14 Dec 2007 23:12:41 +0000 (15:12 -0800)]
Document ADV and its stuff

16 years agoCall this version 3.60. The gPXE support work is waiting for them.
H. Peter Anvin [Fri, 14 Dec 2007 23:10:22 +0000 (15:10 -0800)]
Call this version 3.60.  The gPXE support work is waiting for them.

The gPXE folk are stalled on their side of the gPXE support bargain.
Thus call this version 3.60 instead.

16 years agoCreate libinstaller; actually implement boot-once for extlinux
H. Peter Anvin [Fri, 14 Dec 2007 23:09:11 +0000 (15:09 -0800)]
Create libinstaller; actually implement boot-once for extlinux

--once now supported for extlinux; some infrastructure for syslinux
there as well, need implementation in all the various installers,
however.

16 years agosyslinux_setadv(): handle size == 0, error on size > 255
H. Peter Anvin [Thu, 13 Dec 2007 22:47:48 +0000 (14:47 -0800)]
syslinux_setadv(): handle size == 0, error on size > 255

size == 0 means delete item; we don't want a header then.

size > 255 is always an error.

16 years agoLibrary routines for manipulating ADV data
H. Peter Anvin [Thu, 13 Dec 2007 22:46:04 +0000 (14:46 -0800)]
Library routines for manipulating ADV data

16 years agoDocumentation: ADV was definitely not in 3.53...
H. Peter Anvin [Thu, 13 Dec 2007 22:07:59 +0000 (14:07 -0800)]
Documentation: ADV was definitely not in 3.53...

16 years agoSnapshot: initialize the default ADV for disk-based derivatives
H. Peter Anvin [Thu, 13 Dec 2007 21:55:21 +0000 (13:55 -0800)]
Snapshot: initialize the default ADV for disk-based derivatives

For the disk-based derivatives, handle the default ADV that is part of
the image.

16 years agoUse the ADV to support boot-once
H. Peter Anvin [Mon, 15 Oct 2007 23:20:32 +0000 (16:20 -0700)]
Use the ADV to support boot-once

Define ADV tag 1 as boot-once; overrides DEFAULT once only

16 years agoInitial support for auxilliary data vector
H. Peter Anvin [Thu, 11 Oct 2007 23:03:30 +0000 (16:03 -0700)]
Initial support for auxilliary data vector

Initial support for the auxillary data vector, a storage mechanism
intended to support boot-once and similar features.

16 years agoDeprecate PXELINUX option 208 in accordance with RFC 5071 syslinux-3.55-pre1
H. Peter Anvin [Thu, 13 Dec 2007 18:11:05 +0000 (10:11 -0800)]
Deprecate PXELINUX option 208 in accordance with RFC 5071

As per RFC 5071, deprecate the use of PXELINUX option 208 (magic
number); options 209-211 are now specifically assigned to PXELINUX.

16 years ago3.54 is gone, now working on 3.55
H. Peter Anvin [Thu, 13 Dec 2007 18:01:43 +0000 (10:01 -0800)]
3.54 is gone, now working on 3.55

16 years agoBBS on Award, not Phoenix, is broken... don't know about Phoenix. syslinux-3.54
H. Peter Anvin [Wed, 12 Dec 2007 23:18:20 +0000 (15:18 -0800)]
BBS on Award, not Phoenix, is broken... don't know about Phoenix.

The systems on which BBS has been found broken is Award, not Phoenix.

16 years agoStealth whitespace cleanup
H. Peter Anvin [Wed, 12 Dec 2007 21:32:28 +0000 (13:32 -0800)]
Stealth whitespace cleanup

16 years agoDocument cfarcall thunking support
H. Peter Anvin [Tue, 11 Dec 2007 18:32:57 +0000 (10:32 -0800)]
Document cfarcall thunking support

16 years agocdecl helper is 3.54 material
H. Peter Anvin [Tue, 11 Dec 2007 01:54:37 +0000 (17:54 -0800)]
cdecl helper is 3.54 material

16 years agoSeparate attribute control for disabled menu items syslinux-3.54-pre1
H. Peter Anvin [Mon, 10 Dec 2007 22:49:21 +0000 (14:49 -0800)]
Separate attribute control for disabled menu items

"menu color disabled" for disabled menu items.

16 years agoDocumentation update: NEWS, new MENU commands
H. Peter Anvin [Mon, 10 Dec 2007 22:35:13 +0000 (14:35 -0800)]
Documentation update: NEWS, new MENU commands

Document menu separator/menu indent/menu disable, as well as the Qemu fix.

16 years agoFix handling of VESA modes with noncontiguous memory buffers
H. Peter Anvin [Mon, 10 Dec 2007 22:28:53 +0000 (14:28 -0800)]
Fix handling of VESA modes with noncontiguous memory buffers

Handle VESA modes with noncontiguous memory buffers.  In particular,
this applies to Qemu/KVM in Cirrus emulation mode.

16 years agoAdd "menu separator", "menu indent", "menu disabled"
H. Peter Anvin [Wed, 21 Nov 2007 20:29:32 +0000 (12:29 -0800)]
Add "menu separator", "menu indent", "menu disabled"

A few more options for the menu: "menu separator", "menu indent",
"menu disabled".

16 years agospec: Require NASM 0.98.39
H. Peter Anvin [Wed, 21 Nov 2007 20:26:44 +0000 (12:26 -0800)]
spec: Require NASM 0.98.39

NASM 0.98.38 probably doesn't work anymore.

16 years agoPatch for syslinux.spec
Bernard Li [Tue, 20 Nov 2007 01:26:48 +0000 (17:26 -0800)]
Patch for syslinux.spec

16 years agoWhen setting up the cfarcall stack frame, copy the right amount
H. Peter Anvin [Wed, 21 Nov 2007 05:17:40 +0000 (21:17 -0800)]
When setting up the cfarcall stack frame, copy the right amount

Forgot to convert to dwords by >> 2...

16 years agoAdd missing thunk function for cfarcall
H. Peter Anvin [Wed, 21 Nov 2007 05:11:35 +0000 (21:11 -0800)]
Add missing thunk function for cfarcall

16 years agoNext version is presumably 3.54
H. Peter Anvin [Wed, 21 Nov 2007 02:52:47 +0000 (18:52 -0800)]
Next version is presumably 3.54

16 years agoAdd support for thunking cdecl/stdcall-style real-mode code
H. Peter Anvin [Wed, 21 Nov 2007 02:51:54 +0000 (18:51 -0800)]
Add support for thunking cdecl/stdcall-style real-mode code

Add support for thunking cdecl/stdcall-style 16-bit functions which
pass parameters on the stack.  This is necessary in order to be able
to call PnPBIOS functions without using the (rather scary) PM
interface.

16 years agostruct term_state: remove duplicate .xy and unused .attr
H. Peter Anvin [Tue, 20 Nov 2007 17:54:21 +0000 (09:54 -0800)]
struct term_state: remove duplicate .xy and unused .attr

In struct term_state and its initialized instance default_state:

Remove duplicated initialization of .xy
Remove unused field .attr

16 years agombr: remove *.bin on "spotless", not "clean" syslinux-3.53
H. Peter Anvin [Sun, 18 Nov 2007 06:54:57 +0000 (22:54 -0800)]
mbr: remove *.bin on "spotless", not "clean"

Remove mbr/*.bin on "spotless", not "clean"; otherwise we break "make
installer".

16 years agoDocument changes for 3.53
H. Peter Anvin [Sun, 18 Nov 2007 06:50:12 +0000 (22:50 -0800)]
Document changes for 3.53

16 years agoFix invalid segment assumption in pxelinux syslinux-3.53-pre6
H. Peter Anvin [Sun, 18 Nov 2007 00:02:49 +0000 (16:02 -0800)]
Fix invalid segment assumption in pxelinux

Fix an invalid segment assumption in pxelinux, which caused the
"naked ::" not to work correctly.

16 years agoPreserve ES:DI instead of probing for $PnP syslinux-3.53-pre5
H. Peter Anvin [Thu, 15 Nov 2007 04:51:23 +0000 (20:51 -0800)]
Preserve ES:DI instead of probing for $PnP

The $PnP probe has been found to lock up at least one machine for
reasons unknown.  Drop it; instead, burn the extra few bytes in the
bootsector to save away ES:DI for later restore.

16 years agombr.S: fix loading from logical partitions
H. Peter Anvin [Wed, 14 Nov 2007 23:01:28 +0000 (15:01 -0800)]
mbr.S: fix loading from logical partitions

Fix loading from logical partitions (a push/pop pair was not done in
reverse order.)

16 years agoISOLINUX: Change DriveNo -> DriveNumber
H. Peter Anvin [Wed, 14 Nov 2007 17:43:28 +0000 (09:43 -0800)]
ISOLINUX: Change DriveNo -> DriveNumber

Change DriveNo to DriveNumber in ISOLINUX, to match the other
derivatives.

16 years agoFix boot sectors; cleanup_hardware must preserve registers syslinux-3.53-pre4
H. Peter Anvin [Wed, 14 Nov 2007 05:51:27 +0000 (21:51 -0800)]
Fix boot sectors; cleanup_hardware must preserve registers

cleanup_hardware has registers live across it when called from the
boot sector code; it must preserve all registers.

16 years agoRemove unused variable BufSafeSec
H. Peter Anvin [Wed, 14 Nov 2007 00:37:18 +0000 (16:37 -0800)]
Remove unused variable BufSafeSec

Remove unused variable BufSafeSec; it was identical to BufSafe in
every way.

At the moment, BufSafe* are always constants; consider if they can be
swapped out for constants or if we want to retain them for flexibility.

16 years agoAdd sha256crypt and sha512crypt; not yet enabled
H. Peter Anvin [Sat, 10 Nov 2007 02:18:31 +0000 (18:18 -0800)]
Add sha256crypt and sha512crypt; not yet enabled

Add support for sha256crypt and sha512crypt to the library.  Not yet
included in the menu system, need to decide if it's worth 10K or if
the code can be realistically compacted.

16 years agoIn 32-bit mode, "xor eax,eax" is shorter than "xor ax,ax"
H. Peter Anvin [Sat, 10 Nov 2007 00:56:02 +0000 (16:56 -0800)]
In 32-bit mode, "xor eax,eax" is shorter than "xor ax,ax"

For 32-bit code, 32-bit operations are shorter than 16-bit operations,
so use them.

16 years agoTypo cleanup
H. Peter Anvin [Thu, 8 Nov 2007 01:29:28 +0000 (17:29 -0800)]
Typo cleanup

16 years agoGuard section to avoid future partial-sector-clobber issues syslinux-3.53-pre3
H. Peter Anvin [Wed, 7 Nov 2007 17:26:10 +0000 (09:26 -0800)]
Guard section to avoid future partial-sector-clobber issues

Create a guard section .uibss that explicitly is covering the
potential partial-sector-clobber zone, and contains items which are
safe to assume will only be used after full image load.

16 years agoClean up the transition to PM for shuffle-and-boot-to-PM
H. Peter Anvin [Wed, 7 Nov 2007 01:15:13 +0000 (17:15 -0800)]
Clean up the transition to PM for shuffle-and-boot-to-PM

Clean up the transition to PM for shuffle-and-boot-to-PM, and set LDTR
and TR to keep Intel VT happy.

16 years agoisolinux: protect bss variables clobbered due to final sector load
H. Peter Anvin [Wed, 7 Nov 2007 01:14:03 +0000 (17:14 -0800)]
isolinux: protect bss variables clobbered due to final sector load

The image size loaded is bigger than the real image; this is due to
the final sector being fractional.  Move variables needed during that
stage from .bss to .bss1.

XXX: Need to audit to make sure this doesn't affect other derivatives
and/or other variables, too.

16 years agoSetting cr0 requires a jmp to synchronize on 386/486
H. Peter Anvin [Mon, 5 Nov 2007 00:34:38 +0000 (16:34 -0800)]
Setting cr0 requires a jmp to synchronize on 386/486

The 386 and 486 requires a jmp after any setting of cr0.  It can be a
near jmp, but those processors do not correctly synchronize without
it.

We have jmps after setting cr0 in all spots except one, so make that
happen correctly.

16 years agoUse "nop nop" to clobber "mov cs,ax" even though it's longer
H. Peter Anvin [Fri, 2 Nov 2007 22:55:23 +0000 (15:55 -0700)]
Use "nop nop" to clobber "mov cs,ax" even though it's longer

Clobber "mov cs,ax" with "nop nop" even though that adds a byte to the
source; it's a lot easier to comprehend while debugging.

16 years agoOptional debugging code for shuffle and boot and load_linux syslinux-3.53-pre2
H. Peter Anvin [Fri, 2 Nov 2007 22:46:28 +0000 (15:46 -0700)]
Optional debugging code for shuffle and boot and load_linux

Put (disabled) debugging code in shuffle.c and load_linux.c for future
needs.

16 years agocomboot: fix shuffle_and_boot_rm (used by linux.c32)
H. Peter Anvin [Fri, 2 Nov 2007 22:42:54 +0000 (15:42 -0700)]
comboot: fix shuffle_and_boot_rm (used by linux.c32)

Fix shuffle_and_boot_rm, which generated an invalid trampoline; this
was used by linux.c32 among other things.

16 years agoRemove unused EndOfGetcBuf
H. Peter Anvin [Fri, 2 Nov 2007 17:40:49 +0000 (10:40 -0700)]
Remove unused EndOfGetcBuf

16 years agoCode cleanup: get rid of hard-coded descriptor numbers
H. Peter Anvin [Fri, 2 Nov 2007 01:25:10 +0000 (18:25 -0700)]
Code cleanup: get rid of hard-coded descriptor numbers

Get rid of hard-coded descriptor numbers, and instead use symbolic
names for the descriptors derived from the calculated offset in the
GDT.

16 years agomkdiskimage: correct the partition type for > 1024 cylinders
H. Peter Anvin [Thu, 1 Nov 2007 22:53:25 +0000 (15:53 -0700)]
mkdiskimage: correct the partition type for > 1024 cylinders

Generate the correct partition type for > 1024 cylinders.

16 years agosyslinux $PnP search fix syslinux-3.53-pre1
Gerald Britton [Mon, 29 Oct 2007 21:03:17 +0000 (17:03 -0400)]
syslinux $PnP search fix

I finally fixed the "chain.c32 hangs when run on modern qemu" problem.
Apparently it was hanging hitting the "Invalid $PnP header (too short)" branch
of the code which loops without ever incrementing bx, so it never terminates.

The patch below (taken against your current git) seems to fix the problem for
me, but having not explored the code much, it probably isn't the most elegant
of fixes.

-- Gerald

16 years agoTry to fix libfat/ulint.h for non-x86 platforms
H. Peter Anvin [Thu, 1 Nov 2007 22:34:09 +0000 (15:34 -0700)]
Try to fix libfat/ulint.h for non-x86 platforms

libfat/ulint.h doesn't work as expected because of array devolution to
pointers.  Try to fix.

16 years agomkdiskimage: support more than 1024 cylinders
H. Peter Anvin [Wed, 31 Oct 2007 04:46:58 +0000 (21:46 -0700)]
mkdiskimage: support more than 1024 cylinders

If the user wants to generate a disk image with more than 1024
cylinders, print a warning but do the right thing, including labelling
the partitions as LBA partitions.

16 years agoDHCP bootfile option is 67, not 64.
H. Peter Anvin [Fri, 19 Oct 2007 22:20:53 +0000 (15:20 -0700)]
DHCP bootfile option is 67, not 64.

16 years agoFix [BI]ESUBDIRS for make installer/tidy/clean/spotless
H. Peter Anvin [Fri, 19 Oct 2007 18:33:21 +0000 (11:33 -0700)]
Fix [BI]ESUBDIRS for make installer/tidy/clean/spotless

Fix the handling of [BI]ESUBDIRS for other targets than "all".

16 years agoAdd .gitignore file so "git status" makes sense
H. Peter Anvin [Thu, 11 Oct 2007 23:05:14 +0000 (16:05 -0700)]
Add .gitignore file so "git status" makes sense

16 years agoMark TSS unbusy before protected mode entry
H. Peter Anvin [Thu, 11 Oct 2007 22:01:32 +0000 (15:01 -0700)]
Mark TSS unbusy before protected mode entry

The LTR instruction marks the TSS descriptor busy, and any subsequent
attempt to load it will #GP unless maked unbusy first.  Sigh.

16 years agoSet TR and LDTR when entering protected mode
H. Peter Anvin [Thu, 11 Oct 2007 21:47:23 +0000 (14:47 -0700)]
Set TR and LDTR when entering protected mode

Intel's VT daftly requires TR and LDTR to have valid protected-mode
values in order to kick in.  Thus, give it at least a valid chunk of
memory for the TR and a null selector for the LDTR.

16 years agoMakefiles: create NASMOPT variable
H. Peter Anvin [Wed, 10 Oct 2007 21:12:58 +0000 (14:12 -0700)]
Makefiles: create NASMOPT variable

Create NASMOPT variable, defaulting to -O9999.  Mostly there to test
beta versions of NASM.

16 years agoUpdate the memory layout specification
H. Peter Anvin [Wed, 3 Oct 2007 23:17:47 +0000 (16:17 -0700)]
Update the memory layout specification

Update the memory layout specification.  Remove NASM 0.98.38 bug
workarounds, rebalance the bss sections, and introduce the new section
.adv which contain the auxilliary data vector.

16 years agoNext version is 3.53
H. Peter Anvin [Tue, 2 Oct 2007 20:42:06 +0000 (13:42 -0700)]
Next version is 3.53

16 years agoelf.c: better error message when memory is unavailable
H. Peter Anvin [Tue, 2 Oct 2007 20:41:55 +0000 (13:41 -0700)]
elf.c: better error message when memory is unavailable

Print something other than just "invalid ELF file or insufficient
memory" when the specific error is that a specific memory segment is
not available.

16 years agomemdump: remove debugging code never meant for release
H. Peter Anvin [Tue, 2 Oct 2007 20:36:33 +0000 (13:36 -0700)]
memdump: remove debugging code never meant for release

16 years agobootsect.inc: make sure the $PnP header can fit inside the segment
H. Peter Anvin [Tue, 2 Oct 2007 18:17:36 +0000 (11:17 -0700)]
bootsect.inc: make sure the $PnP header can fit inside the segment

Terminate the search as soon as the $PnP header would fall outside the
segment, not just the $PnP signature itself.

16 years agoFix building on a 64-bit system without a 32-bit system installed syslinux-3.52 syslinux-3.52-pre10
H. Peter Anvin [Mon, 24 Sep 2007 21:18:18 +0000 (14:18 -0700)]
Fix building on a 64-bit system without a 32-bit system installed

A bunch of glibc header files were bogusly included.  We should not
depend on having a 32-bit glibc installed, since we don't use it.

16 years agolocalboot.c32: sample/test program for invoking syslinux_local_boot()
H. Peter Anvin [Fri, 21 Sep 2007 23:54:57 +0000 (16:54 -0700)]
localboot.c32: sample/test program for invoking syslinux_local_boot()

Simple test program which simply invokes syslinux_local_boot().

16 years agomemdump: a debugging utility to dump memory over a serial port
H. Peter Anvin [Fri, 21 Sep 2007 23:52:35 +0000 (16:52 -0700)]
memdump: a debugging utility to dump memory over a serial port

A memory-dumping utility which runs in real mode.  Thus, it can be
used to get memory dumps from a relatively pristine system.

16 years agoDocument memory overwrite fix syslinux-3.52-pre9
H. Peter Anvin [Fri, 21 Sep 2007 23:26:25 +0000 (16:26 -0700)]
Document memory overwrite fix

Document menu system memory overwrite fix

16 years agomemdisk: add "nopass" option to completely take over INT 13h
H. Peter Anvin [Fri, 21 Sep 2007 23:24:35 +0000 (16:24 -0700)]
memdisk: add "nopass" option to completely take over INT 13h

Add the "nopass" option to completely remove the system drives.  This
is a pretty big hammer and is largely for debugging at this stage; it
probably needs more polishing before it can be made official.

16 years agocomboot: fix memory overwrite bug
H. Peter Anvin [Fri, 21 Sep 2007 23:22:58 +0000 (16:22 -0700)]
comboot: fix memory overwrite bug

Fix memory overwrite bug, specifically, the use of BP after it might
have gotten clobbered.  Since at the point of use, BP is supposed to
be == SP, we can just add "mov bp,sp".