summaryrefslogtreecommitdiff
path: root/com32
Commit message (Collapse)AuthorAgeFilesLines
* shuffler: when looking for temporary memory, it has to be *free!*syslinux-3.80-pre8H. Peter Anvin2009-05-031-0/+2
| | | | | | | free_area() ended up looking for any area of memory, not necessarily a *free* area of memory. This had predictably disastrous consequences. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* movebits: make the user-space test cases slightly easierH. Peter Anvin2009-05-031-9/+12
| | | | | | | Make it a bit easier to write user-space test cases; use fgets+sscanf so comment lines end up getting ignored. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* shuffler: correctly handle one-to-many relationshipssyslinux-3.80-pre7H. Peter Anvin2009-05-022-26/+133
| | | | | | | | | | | | | | | | | | One-to-many relationships, in which one chunk of a file is used in more than one place, tends to naturally show up in decoding certain fileformats, including (but not limited to) Microsoft SDI. Make the shuffler library handle those cases correctly, and remove a special-purpose hack in sdi.c. This is based on the observation that all one-to-many relationships can be treated as a one-to-one shuffle followed by destination-to-destination copies; i.e. one copy is (arbitrarily) assigned the "master copy" status, and all aliases are then copied from the master copy when the master copy is already in its final place. All other copies can then be simply ignored for the duration of the shuffle, just as zero-memory is. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* shuffle: align the shuffle safe areaH. Peter Anvin2009-05-021-2/+3
| | | | | | For performance, align the shuffle safe area to a dword boundary. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* syslinux_dump_memmap(): make it easier to spot errorsH. Peter Anvin2009-05-021-1/+1
| | | | | | | | Instead of stopping the memmap dump on SMT_END, stop it only on a null pointer. That way we can see if we have any bogus entries with SMT_END. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* syslinux_add_memmap(): fix failures at address zero, more?H. Peter Anvin2009-05-021-38/+63
| | | | | | | | | | | | syslinux_add_memmap() would fail miserably and corrupt the list if an entry was added at address zero. Quite possibly other addresses would have similar problems. Furthermore, we did an extra "optimization pass" which should never have been necessary if the algorithm had been correct in the first place. This should hopefully fix ALL those bugs. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: align the stack to a 16-byte boundaryH. Peter Anvin2009-05-021-1/+1
| | | | | | Align the stack to a 16-byte boundary, just in case... Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: move setting regs.eax to mboot_run()H. Peter Anvin2009-05-021-2/+1
| | | | | | | The setting of regs.eax in map_image() doesn't really make any sense; move it to mboot_run() instead. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: move map initialization out of map_image()H. Peter Anvin2009-05-023-35/+38
| | | | | | | | | The amap/mmap initialization were buried randomly inside map_image(), which at the very least makes the code needlessly hard to read. Furthermore, it is at least possible that we may want to be able to map multiple images in the future. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* cmenu: add .gitignore fileH. Peter Anvin2009-04-301-0/+2
| | | | | | Add .gitignore file for .c files created from .menu files. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: disable DEBUGH. Peter Anvin2009-04-301-1/+1
| | | | | | | | Disable DEBUG in mboot.c32, which was accidentally enabled in a previous commit. Reported-by: Sebastian Herbszt <herbszt@gmx.de> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* linux.c32: move handling of mem= and vga= into the library functionsyslinux-3.80-pre5H. Peter Anvin2009-04-294-78/+99
| | | | | | | Move the handling of mem= and vga= into syslinux_boot_linux(), so that the user of that function doesn't need to worry about it. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* shuffle_pm: remove unused variables and includesH. Peter Anvin2009-04-281-7/+1
| | | | | | | Remove unused variables and #include statements from syslinux_shuffle_boot_pm(). Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* memscan: use the contents of the ebda_seg, not the pointer itselfH. Peter Anvin2009-04-281-1/+1
| | | | | | Use the contents of the ebda_seg variable, not the address... Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: silence warningH. Peter Anvin2009-04-281-0/+1
| | | | | | Silence warning of unused argc. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: include module filenames in the command lineH. Peter Anvin2009-04-281-1/+4
| | | | | | | Grub includes the kernel and module filenames in the command lines it passes, so match that behavior and don't strip them off. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Unify dependency generation: com32/lib, com32/cmenuH. Peter Anvin2009-04-273-18/+19
| | | | | | Add the unified dependency generation to com32/lib and com32/cmenu. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Unify dependency generationH. Peter Anvin2009-04-271-8/+10
| | | | | | | | | | | | Make the dependency generation more common; have a general pattern in MCONFIG, and use it in rules (not in CFLAGS). For NASM source, in order to stay compatible with old versions of NASM, run NASM twice; newer versions of NASM is capable of generating dependencies simultaneously like gcc can, but that would break compatibility with older distros. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* memscan: correctly handle the DOS memory fallback caseH. Peter Anvin2009-04-271-4/+4
| | | | | | Actually (try to) handle the case of finding the DOS memory amount. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: add header guards; use <inttypes.h>; formatting changesH. Peter Anvin2009-04-272-46/+36
| | | | | | | Reformat the mboot header files slightly, use <inttypes.h> types, and add header inclusion guards. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot/solaris.c: fix failure case; correct copyright noticeH. Peter Anvin2009-04-271-5/+6
| | | | Better handling of failed mapping; correct copyright notice.
* mboot: reimplement the Solaris DHCP hack, add compliant a.out modesyslinux-3.80-pre1H. Peter Anvin2009-04-265-6/+83
| | | | | | | | | | | | | Reimplement the Solaris DHCP information passing hack. Add a spec-compliant mode for the "a.out kludge". The spec is pretty clear that the bit should override the ELF header (after all, otherwise there wouldn't be any need for the bit), but Grub disagrees. We default to Grub-compliant mode, as Solaris seems to set the bit even though it's an ELF kernel, but add the option to enable spec-compliant mode, as apparently some versions of FreeBSD need it. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Remove the old mboot modulenew-mbootH. Peter Anvin2009-04-265-1629/+1
|
* mboot: fix cmdline; a few more layout tweaksH. Peter Anvin2009-04-264-30/+38
| | | | | | | | | | Fix module command lines (it was overwriting the main kernel command line); a few minor layout tweaks. In particular, we require the section header to be page-aligned, but not the subsequent sections. With this, I can get Xen to boot. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: skip --- marker; decompress all filesH. Peter Anvin2009-04-261-7/+5
| | | | | | | | | When walking the argument list we need to skip --- markers. Grub, and the old mboot.c32, seem to transparently decompress all files, not just the main one, so do the same. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: make sure we actually succeed when we finishedH. Peter Anvin2009-04-262-18/+44
| | | | | | | When we actually finished mapping the image, return 0 and don't bail. Add error messages to most failure cases. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* com32/MCONFIG: generate dependency files by defaultH. Peter Anvin2009-04-261-2/+4
| | | | | | | Generate the dependency files by default. They should perhaps even move into the actual rule lines. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* mboot: set up a stack even though the spec doesn't require itH. Peter Anvin2009-04-261-0/+18
| | | | | | | Set up a stack for the Multiboot OS even though it is not required by spec. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* First attempt at a rewritten mboot moduleH. Peter Anvin2009-04-269-1/+1228
| | | | | | | First attempt at rewriting the mboot module to use the Syslinux shuffle APIs. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* shuffle_rm: clean up the trampoline generator with macrosH. Peter Anvin2009-04-231-31/+50
| | | | | | | Define macros for common constructs to clean up the rm trampoline generator. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* shuffle_rm: set up SS:ESP and segs as quickly as possibleH. Peter Anvin2009-04-231-13/+40
| | | | | | | For extra paranoia's sake, set up SS:ESP immediately after the real-mode switch, and then set all the segment registers. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* hdt: fix conflictErwan Velu2009-04-231-24/+0
| | | | | | Impact: making build working again A forgoten conflict
* Merge branch 'master' of git://git.kernel.org/pub/scm/boot/syslinux/syslinux ↵Erwan Velu2009-04-2326-53/+61
|\ | | | | | | | | | | | | | | | | | | into mainline Conflicts: com32/hdt/hdt-cli-pci.c com32/hdt/hdt-cli-vesa.c com32/hdt/hdt-common.c com32/hdt/hdt-menu-dmi.c
| * Global whitespace cleanup.H. Peter Anvin2009-04-2025-51/+38
| | | | | | | | Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
| * hdt: fix format string warningsSebastian Herbszt2009-04-172-5/+3
| | | | | | | | | | | | Fix format string warnings spit by the compiler. - Sebastian
| * com32: remove unused variablesSebastian Herbszt2009-04-172-4/+0
| | | | | | | | | | | | Silence compiler warnings by removing unused variables. - Sebastian
* | hdt: 0.3.1hdt-0.3.1Erwan Velu2009-04-231-1/+1
| | | | | | | | | | | | Impact: new release New release
* | Merge commit 'mouraf/for-erwan' into for-erwanPierre-Alexandre Meyer2009-04-2216-49/+322
|\ \ | | | | | | | | | | | | | | | Conflicts: com32/hdt/hdt-cli-hdt.c
| * | hdt: Add VPD menu itemPierre-Alexandre Meyer2009-04-173-0/+115
| | | | | | | | | | | | | | | | | | Add an item to display VPD information, if detected. Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
| * | hdt: Add vpd mode (CLI)Pierre-Alexandre Meyer2009-04-175-0/+121
| | | | | | | | | | | | | | | | | | Add the vpd mode to dump the vpd structure, if found. Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
| * | Merge commit 'erwan/master' into for-erwanPierre-Alexandre Meyer2009-04-1727-278/+324
| |\ \ | | | | | | | | | | | | | | | | | | | | Conflicts: com32/hdt/hdt-cli-hdt.c com32/hdt/hdt-cli.c
| * | | hdt: Get rid of nb_modules in struct cli_module_descrPierre-Alexandre Meyer2009-04-1710-33/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | End list of modules commands by NULL instead of managing manually the number in nb_modules. This should limit the number of bugs when adding new features. Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
| * | | hdt: Get rid of MAX_MODESPierre-Alexandre Meyer2009-04-163-16/+23
| | | | | | | | | | | | | | | | | | | | | | | | End the list of modes by NULL instead of managing manually the length. Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
* | | | hdt: removing useless more_printfErwan Velu2009-04-191-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Impact: improving user experience hdt>show modes was using more_printf. This is pretty useless and annoying for users.
* | | | hdt: removing useless more_printfErwan Velu2009-04-191-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | Impact: none more_printf isn't needed for such display
* | | | hdt: more_printf was eating a lineErwan Velu2009-04-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Impact: Visual. Some lines were missing at display The more_printf call was missing some lines to display
* | | | hdt: MAC Address should only be displayed on the PXE DeviceErwan Velu2009-04-191-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Impact: MAC address were shown on invalid devices Prior to that commit, the mac address of the PXE booted network card was displayed on every pci devices.... weird.
* | | | hdt: fixing typoErwan Velu2009-04-192-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Impact: fixing compilation errors Wrong call :(
* | | | hdt: Cleaning dmi chassis asset tag outputErwan Velu2009-04-192-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Impact: Visual Some users reported this dmi/chassis/asset tag could reports many spaces.
* | | | hdt: removing multiple spacesErwan Velu2009-04-194-3/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Impact: Improving visual experience Some hardware reported strings contains multiple spaces. This isn't very nice for managing display. The del_multiple_spaces() function is removing multiple spaces.