| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
The macro YEAR is a number, not a string, so we have to use the
asciidec macro.
|
|
|
|
|
|
| |
Make the handling of PXENV+ versus !PXE simpler by abstracting the
differences: push the various fields to the stack in a common order
and then process them in common code.
|
| |
|
|
|
|
|
|
| |
This reverts commit 8b9d34885d8a9d5f7e9da6fbc75735ce1a0c945b.
The count here *is* kept in eax, not in ecx.
|
|
|
|
|
|
| |
After having reloaded the descriptor buffer, we divide the byte count
to get a descriptor count. That descriptor count belongs in ECX, not
in EAX.
|
|
|
|
|
| |
Old versions of NASM would miscompile forward EQU references. In this
case, fixing that problem is easy, so just do it.
|
| |
|
|
|
|
|
| |
Simplify some of the code in the detection of the API structure.
Based on things discovered while porting this code to gPXE.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
If currently the only caller of ucs2_to_cp wants to use ES, we might
as well move the ES set/restore into ucs2_to_cp.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| |
| |
| |
| |
| |
| | |
Trivially optimize the readdir code
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| |
| |
| |
| |
| | |
The interface to ucs2_to_cp has changed slightly, it now returns ZF=0
on failure, not CF=1.
|
| |\ |
|
| | |
| | |
| | |
| | |
| | | |
Reorganize the codepage handling to make it easier to do ucs2 ->
codepage conversion, this will be used for a future directory lister.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
COMBOOT API: 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.
Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
| | |
| | |
| | |
| | |
| | | |
Slightly compactify the getting cached packets messages, by putting
them all on one line.
|
| | |
| | |
| | |
| | |
| | | |
The minimum size for the PXENV+ structure is 0x28 bytes (for PXE
1.x/2.0); the size will be 0x2C if the !PXE pointer is provided.
|
|/ /
| |
| |
| |
| | |
Clean up and bug fixes of the entry point search. Verify that all
methods work, and print the one we eventually used.
|
| |
| |
| |
| |
| |
| | |
Add a comboot interface to access the keyboard remapping table,
which can be used for either querying or changing the keyboard
map.
|
| |
| |
| |
| | |
Use "skipline" where appropriate instead of reading into the trackbuf.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure we eat the rest of the input line when we encounter a
DEFAULT command that is to be ignored because we have a UI command
already. Do this by making skipline a subroutine.
Based on a patch by Sebastian Hebszt <herbszt@gmx.de>, although
substantially modified.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The new directive doesn't seem to work here. Looks like DefaultLevel is never
changed:
core/parseconfig.inc:pc_default: cmp ax,[DefaultLevel]
core/parseconfig.inc:DefaultLevel dw 0 ; The current level of default
core/ui.inc: cmp word [DefaultLevel],1 ; Active UI statement?
|
|/
|
|
|
|
|
|
|
| |
Add a new "UI" directive to specify a user interface module, instead
of abusing the DEFAULT directive. This allows the DEFAULT directive
to be used for setting the default, even when the menu system is
enabled.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
The local domain name is option 15, not option 16. Fix.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
Fix dependency generation with certain old versions of NASM, which
omitted the '\n' between dependency lines.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
Pre-initialize the e820 buffer to all zero, except for the active bit;
we have found that BIOSes will make assumptions about the pre-existing
value of the buffer and this seems the most conservative value.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some blithering idiot thought it was a good idea to introduce
"extended attributes" for INT 15h, AX=E820h, and in doing so, breaking
compatibility with ALL E820 users out there. F*cking morons.
Implement handling of extended attributes in:
- e820 parsing in the core
- e820 parsing in libcom32
- e820 parsing *and proxying* in memdisk
The latter is the really painful one.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
Report the booting mode of ISOLINUX through the COM32 interface.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
When the Tab key is pressed, display a list of matching labels. This
can be disabled via the NOCOMPLETE configuration command. This is a
slightly modified patch by Sebastian Herbszt.
|
|
|
|
|
|
| |
Show which keyword is missing the parameter.
- Sebastian
|
|
|
|
|
|
| |
Save a few bytes in ISOLINUX.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
With a long VERSION_STR, we would sometimes fail to compile. Shorten
a few of the messages to make sure that doesn't happen.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
Display the BIOS type for isolinux in the same way we do for
ldlinux/extlinux.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
| |
We were incorrectly not passing the EBIOS flag in hybrid HDD mode;
also compute the EBIOS LBA correctly in hybrid HDD mode. Allow a
34-bit LBA for this, that way we still support up to 2^32 CD-ROM
sectors (8 TB).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
Still a work in progress.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
| |
iso%.bin depends on checksumiso.pl
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
Always pad isolinux.bin to a full CD-ROM sector boundary. This avoids
a lot of potential special cases.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the Syslinux view of the world, a zero-length file doesn't exist
and therefore should return error on open. A lot of the code relies
on this, but ISOLINUX allowed a zero-length file to be opened, which
could cause all kinds of trouble.
It would be nicer to not have that restriction, but removing it will
probably not happen until the configuration code is rewritten in C.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
| |
The core is an embedded target, so use MCONFIG.embedded.
|
|
|
|
|
| |
Cleanup and centralize the Makefile system even more.
Fix a gcc 4.3 incompatibility in memdisk (definition of strlen).
|
|
|
|
|
|
|
| |
Simplify and fix bugs in the code to store and match label names
without filename mangling.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
Store the label names unmangled and match those against command_line.
- Sebastian
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
| |
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The address in EDI returned by the load_high call used to load the
kernel needs to be passed to parse_load_initrd, but the code which
clears memory after setup sectors for 1.2.x kernels was corrupting
low 16 bits of EDI. In most cases this corruption was not noticed,
because with usual setup sizes DI was set to 0xf800, therefore the
chance of getting the kernel size such that initrd would actually
overwrite the kernel was about 3%.
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Attempts to load *.lkrn images were failing with "Not enough memory
to load specified image". These images have the su_ramdisk_max
header field set to zero, and the code in core/runkernel.inc was
limiting MyHighMemSize too early (before the load_high call used to
load the main part of the kernel).
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
| |
People often don't bother specifying a baud rate for virtual serial
ports. Handle parsing correctly.
|
|
|
|
|
|
|
| |
ldlinux and extlinux are both using CurrentDir variable name.
Rename CurDir to make it consistent with those.
- Sebastian
|
|
|
|
|
|
|
| |
Fix numerous problems in the way we handled the ADV with CBIOS. The
EBIOS code was largely correct, but the CBIOS code was just busted.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
Remove assumption that mangle_name leaves DI beyond the end of the
buffer. This was true back when the mangled filename buffer was an
11-byte DOS filename, but it is definitely not true anymore.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
| |
If git-describe comes up with a tag not starting with
syslinux-<version>- then leave it as-is.
|