summaryrefslogtreecommitdiff
path: root/com32/lib/syslinux
Commit message (Collapse)AuthorAgeFilesLines
* movebits: rewrite significant chunks of the algorithmsyslinux-3.63-pre5H. Peter Anvin2008-04-091-166/+246
| | | | | | | | | Rewrite the algorithm to prefer entries which can be directly moved into their target slots; this should reduce the number of descriptors in most cases (although not necessarily *all* cases.) Try to clean up the code some while we're at it... the code is confusing enough as it is.
* zonelist.c: Fix the coalescing of identical rangesH. Peter Anvin2008-04-091-7/+6
| | | | | The old code could fail to coalesce backwards in the case where a range is totally obliterated. For now, just scan the whole list.
* movebits: use the memmap data structure for the freelistH. Peter Anvin2008-04-081-152/+80
| | | | | | Use the syslinux_memmap data structure for the free memory list. This means we get range coalescing; this sometimes generates lists that are vastly shorter than without range coalescing.
* movebits: handle the case of an upward overlap move with obstaclesH. Peter Anvin2008-04-081-115/+187
| | | | | Handle the case of an upward move when there is something in the way. This happens when loading an SDI image.
* Whitespace cleanup...syslinux-3.62-pre11H. Peter Anvin2008-02-192-7/+7
|
* Actually implement syslinux_ipappend_strings()H. Peter Anvin2008-02-191-0/+58
| | | | | Actually implement the library function syslinux_ipappend_strings(), which had been in the header files but not in the actual library.
* The shuffle descriptors need to be unused for input *and* outputsyslinux-3.62-pre3H. Peter Anvin2008-02-121-5/+17
| | | | | | | | | | | The memory used to hold shuffle descriptors must be unused during the entire execution of the shuffle sequence, and therefore needs to be free at input *and* output time. Once we have picked a region for the shuffle descriptors, we can free this working copy and start over with a clean memory map, the only thing we do there is mark as reserved the memory used by the descriptors.
* Change the minimum number of shuffle descriptors to 64.H. Peter Anvin2008-02-121-1/+1
| | | | | Only use 64 as a static guarantee of the number of shuffle descriptors; corresponding to 768 bytes of memory.
* Query the shuffle descriptor set size and use itH. Peter Anvin2008-02-121-1/+14
| | | | | Query the maximum number of shuffle descriptors, and use that number as the descriptor block size.
* shuffle: avoid computing block lists that will never convergeH. Peter Anvin2008-02-111-4/+8
| | | | | | It is safe to assume that the number of moves will never decrease as the reserved memory space increases; thus, no need to do individual increments; skip ahead.
* Handle arbitrary numbers of shuffle descriptorsH. Peter Anvin2008-02-112-22/+147
| | | | | Allocate high memory out of the way to hold the shuffle descriptors, and generate continuation descriptors as needed.
* Merge commit 'origin/master' into advH. Peter Anvin2008-01-1031-31/+31
|\ | | | | | | | | | | Conflicts: extlinux/extlinux.c
| * Update copyright yearH. Peter Anvin2008-01-1027-27/+27
| |
* | syslinux_setadv(): handle size == 0, error on size > 255H. Peter Anvin2007-12-131-12/+18
| | | | | | | | | | | | size == 0 means delete item; we don't want a header then. size > 255 is always an error.
* | Library routines for manipulating ADV dataH. Peter Anvin2007-12-133-1/+175
| |
* | Initial support for auxilliary data vectorH. Peter Anvin2007-12-132-0/+94
|/ | | | | Initial support for the auxillary data vector, a storage mechanism intended to support boot-once and similar features.
* Optional debugging code for shuffle and boot and load_linuxsyslinux-3.53-pre2H. Peter Anvin2007-11-022-0/+41
| | | | | Put (disabled) debugging code in shuffle.c and load_linux.c for future needs.
* Add syslinux_reboot()H. Peter Anvin2007-07-201-0/+47
|
* Implement syslinux_serial_console_info()H. Peter Anvin2007-05-311-0/+52
|
* More tweaks to allow bigger stack/heap, and boot protocol adjustmentssyslinux-3.50-pre7H. Peter Anvin2007-05-071-1/+1
| | | | | Seems the su_heapend field was never set up right; also sanitize the way the pre-2.02 command line is handled.
* Make more space for the heap when doing so is possibleH. Peter Anvin2007-05-051-13/+16
| | | | | If we have a modern kernel which is loaded high, we can allow a lot more space for the real-mode heap.
* Add wrapper function syslinux_run_kernel_image()syslinux-3.50-pre6H. Peter Anvin2007-04-261-0/+65
| | | | Add syslinux_run_kernel_image() wrapper function for API function 0016h.
* Add syslinux_local_boot() wrapper functionH. Peter Anvin2007-04-041-0/+42
| | | | Add API wrapper function for the Local Boot function.
* pxe_get_cached.c: readability improvement.H. Peter Anvin2007-04-031-2/+2
|
* A few more syslinux wrapper functionH. Peter Anvin2007-04-033-0/+128
| | | | | | | | Add implementations of a few more syslinux wrapper functions: syslinux_run_command() syslinux_run_default() syslinux_final_cleanup()
* Fix the handling of namelen and argument parsing in linux.c32Ferenc Wagner2007-04-031-1/+1
|
* SYSLINUX API headers, and beginning of implementation.H. Peter Anvin2007-03-201-0/+41
|
* Stealth whitespace cleanupH. Peter Anvin2007-03-201-1/+1
|
* Add interface for querying the syslinux feature flags.H. Peter Anvin2007-03-201-0/+51
|
* Move <syslinux.h> to <syslinux/idle.h>; clean up libutil do_idle()H. Peter Anvin2007-03-201-0/+57
| | | | | | Move <syslinux.h> to <syslinux/idle.h> since that was all that was there; do_idle() in libutil can simply be a macro for syslinux_idle() or sched_yield() as appropriate.
* initramfs chain handling: add support for forcing the alignment.H. Peter Anvin2007-03-154-12/+44
| | | | | | cpio has annoying alignment constraints; make it possible to enforce them without adding padding to the end of last member (which breaks things which relies on gzip and need to know the final length.)
* Library functions for manipulating initramfsH. Peter Anvin2007-03-155-0/+386
| | | | | | Library support for constructing initramfs. This version is *not* complete, as it doesn't take into account alignment requirements properly.
* Initial library support for booting a Linux kernelH. Peter Anvin2007-03-151-0/+293
|
* PXE header support; higher-level function for PXE GET_CACHED_INFOH. Peter Anvin2007-03-151-0/+81
| | | | | Beginnings of higher-level functions for PXE support. For now, only pxe_get_cached_info() is actually supported.
* Stealth whitespace cleanup (automated)H. Peter Anvin2007-03-1410-40/+38
|
* Add a register-setting shuffle and boot for real mode; clean up headers.syslinux-3.40-pre14H. Peter Anvin2007-03-142-8/+11
| | | | | - Add an API function to shuffle and boot which sets *all* RM registers; - Move those structures to <syslinux/bootpm.h> and <syslinux/bootrm.h>
* Finish the shuffle and boot interface, and add an ELF loading module.H. Peter Anvin2007-03-1410-98/+502
| | | | | | The shuffle and boot interface, including the library support, should now work as advertised. Add an ELF-loading module as a demo, and it's probably useful for someone, too.
* Wrapper infrastructure for "shuffle and boot"H. Peter Anvin2007-03-127-0/+892
Initial checkin of a wrapper infrastructure for the "shuffle and boot" interface, both real and protected mode. This code automatically will figure out the necessary sequence of moves, taking into account swaps and overlaps as necessary.