| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | [PXE] PMM now tested and working | Michael Brown | 2008-03-11 | 1 | -1/+1 |
| | | | | | Minor bugfix: 4 x 2 = 8, not 16 | ||||
| * | [prefix] Cope with image source addresses outside base memory | Michael Brown | 2008-03-11 | 1 | -121/+114![]() |
| | | | | | | | When PMM is used, the gPXE image source will no longer be in base memory. Decompression of .text16 and .data16 can therefore no longer be done in real mode. | ||||
| * | [PXE] Improve PnP/BBS detection | Michael Brown | 2008-03-11 | 1 | -19/+49 |
| | | | | | | | | | | | | | | Use BBS installation check to see if we need to hook INT19 even on a PnP BIOS. Verify that $PnP signature is paragraph-aligned; bochs/qemu BIOS provides a dummy $PnP signature with no valid entry point, and deliberately unaligns the signature to indicate that it is not properly valid. Print message if INT19 is hooked. Attempt to use PMM even if BBS check failed. | ||||
| * | [prefix] Add printing functions to libprefix.S | Michael Brown | 2008-03-11 | 3 | -128/+112![]() |
| | | | | | | Move the printing functions from pxeprefix.S into libprefix.S, so they are available for debug from any prefix. | ||||
| * | [PXE] Add PMM support to romprefix.S (untested) | Michael Brown | 2008-03-09 | 2 | -73/+241 |
| | | | | | | | | | | | ROM initialisation vector now attempts to allocate a 2MB block using PMM. If successful, it copies the ROM image to this block, then shrinks the ROM image to allow for more option ROMs. If unsuccessful, it leaves the ROM as-is. ROM BEV now attempts to return to the BIOS, resorting to INT 18 only if the BIOS stack has been corrupted. | ||||
| * | Use internal 16-bit stack for added safety. | Michael Brown | 2008-02-11 | 1 | -0/+4 |
| | | |||||
| * | Fix compiler warnings that appear only on OpenBSD. | Michael Brown | 2007-12-06 | 1 | -7/+7 |
| | | |||||
| * | Replace "Etherboot" strings with "gPXE". | Michael Brown | 2007-11-20 | 1 | -4/+4 |
| | | |||||
| * | Minor refactoring to eliminate duplication. | Michael Brown | 2007-09-25 | 1 | -49/+39![]() |
| | | |||||
| * | Use full protected mode for access to high memory within prefix, to | Michael Brown | 2007-09-25 | 1 | -169/+237 |
| | | | | | | work around limitations in real-mode virtualisation support on Intel VT-capable chips. | ||||
| * | Don't trash the %ecx value returned by relocate(). This was causing | Michael Brown | 2007-07-19 | 1 | -6/+8 |
| | | | | | | | us to round down the size for the relocation copy to the nearest 64kB (+0x10 bytes); this just happened to work on most machines because the last 64kB of the image is all-zeroes anyway (it's the .bss). | ||||
| * | Move .zinfo to libprefix.S; it doesn't belong with the decompression code. | Michael Brown | 2007-07-17 | 3 | -39/+29![]() |
| | | |||||
| * | Update all prefixes currently referring to _load_size to include a | Michael Brown | 2007-07-16 | 5 | -21/+55 |
| | | | | | compressor fixup section. | ||||
| * | Rename _rom_size to _load_size_sect, since hdprefix.S also uses it. | Michael Brown | 2007-07-16 | 2 | -3/+3 |
| | | |||||
| * | Compressed ROM images now work. | Michael Brown | 2007-07-16 | 4 | -7/+65 |
| | | |||||
| * | Use a single _payload_offset linker-defined variable to locate the | Michael Brown | 2007-07-15 | 1 | -16/+21 |
| | | | | | | start of the non-prefix blocks in the loaded image, and rely on the image ordering. This should make introducing compression much easier. | ||||
| * | Skip the length field prepended by util/nrv2b.c | Michael Brown | 2007-07-15 | 1 | -0/+1 |
| | | |||||
| * | Modified calling convention: we now update %esi and %edi just like a | Michael Brown | 2007-07-15 | 1 | -29/+36 |
| | | | | | "rep movsb". | ||||
| * | "not" doesn't affect flags, "xor $-1" does. | Michael Brown | 2007-07-15 | 1 | -1/+1 |
| | | |||||
| * | Rename .lilo extension to .lkrn and updated dependencies | Marty Connor | 2007-07-06 | 2 | -1/+1 |
| | | |||||
| * | Use partition type 0xeb ("EtherBoot"), to avoid any attempts to mount | Michael Brown | 2007-07-05 | 1 | -1/+1 |
| | | | | | the Etherboot partition. | ||||
| * | Add .usb target | Michael Brown | 2007-07-05 | 1 | -0/+23 |
| | | |||||
| * | Working with multi-sector reads | Michael Brown | 2007-07-05 | 1 | -8/+40 |
| | | |||||
| * | hdprefix that works for LBA only | Michael Brown | 2007-07-05 | 2 | -311/+82![]() |
| | | |||||
| * | Miscellaneous efficiency improvements, and extend read_sectors to | Michael Brown | 2007-07-05 | 1 | -45/+63 |
| | | | | | handle multiple sectors. | ||||
| * | Added active partition locator, and simple MBR built using it. | Michael Brown | 2007-07-05 | 2 | -0/+202 |
| | | |||||
| * | Revert "Added master boot record capable of locating active partition" | Michael Brown | 2007-07-05 | 2 | -203/+0![]() |
| | | | | | This reverts commit 844d088c514bb962b3cbd00892db67bad4daa203. | ||||
| * | Added master boot record capable of locating active partition | Michael Brown | 2007-07-05 | 2 | -0/+203 |
| | | | | | (including logical partitions). | ||||
| * | UNDI loader entry point implemented; seems to work. | Michael Brown | 2007-07-04 | 1 | -0/+28 |
| | | |||||
| * | remove obsolete file: src/arch/i386/prefix/int19exit.c | Marty Connor | 2007-07-03 | 1 | -31/+0![]() |
| | | |||||
| * | Warnings purge: src/arch/i386, src/core/disk.c, ramdisk, autoboot | Marty Connor | 2007-07-03 | 2 | -2/+2 |
| | | |||||
| * | Use internal real-mode stack from non-returnable prefixes | Michael Brown | 2007-06-28 | 2 | -0/+8 |
| | | |||||
| * | Revert "Move stack to below 0x7c00; leaving it at the default location" | Michael Brown | 2007-06-28 | 1 | -5/+3![]() |
| | | | | | This reverts commit 03ca71c38da9cc6df01ecd9ef16e97a0edb6a4e9. | ||||
| * | Move stack to below 0x7c00; leaving it at the default location | Michael Brown | 2007-06-28 | 1 | -3/+5 |
| | | | | | (0x7ef4) tends to really screw up anything that loads at 0x7c00... | ||||
| * | Added .nbi as a format. | Michael Brown | 2007-03-11 | 1 | -0/+65 |
| | | |||||
| * | Updated ISAPnP, EISA, MCA and ISA buses to current device model. | Michael Brown | 2007-03-10 | 1 | -32/+0![]() |
| | | | | | | | | ISA 3c509 is currently non-functional, although the EISA (3c509-eisa) and MCA (3c529) variants should build OK. None of this code is yet tested. | ||||
| * | Don't call PXENV_STOP_UNDI in the kpxeprefix. This slighy breaks the | Michael Brown | 2007-01-29 | 1 | -5/+10 |
| | | | | | | clean separation between loading and starting, but does mean that more PXE stacks survive the process. | ||||
| * | .lilo and derived targets (e.g. .iso) now load properly. | Michael Brown | 2007-01-14 | 1 | -23/+29 |
| | | |||||
| * | Call hide_etherboot() from startup(), rather than requiring the prefix to | Michael Brown | 2007-01-14 | 1 | -20/+22 |
| | | | | | do it. | ||||
| * | Damn Broadcom and their damned incorrect assumptions about x86 memory | Michael Brown | 2007-01-13 | 1 | -3/+24 |
| | | | | | allocation. | ||||
| * | Add device description fields to struct device. | Michael Brown | 2007-01-10 | 1 | -1/+6 |
| | | |||||
| * | Avoid leaving preloaded_undi with invalid PXENV+/!PXE structure | Michael Brown | 2007-01-09 | 1 | -3/+15 |
| | | | | | addresses if the signature checks fail. | ||||
| * | Since we now always unload the base code stack (even if we keep UNDI), | Michael Brown | 2007-01-09 | 1 | -83/+24![]() |
| | | | | | we can never return to the PXE stack and must always use INT 18. | ||||
| * | Populate preloaded_undi device when applicable. | Michael Brown | 2007-01-09 | 1 | -0/+9 |
| | | |||||
| * | Call PXENV_UNDI_GET_NIC_TYPE to identify NIC physical device. | Michael Brown | 2007-01-09 | 1 | -136/+480 |
| | | | | | | | Record all information required for populating a struct undi_device. Make debugging output more human-readable. | ||||
| * | Copy pxelinux's shutdown sequence: use UNLOAD_STACK without STOP_BASE, | Michael Brown | 2007-01-08 | 1 | -3/+9 |
| | | | | | and call UNDI_SHUTDOWN first to make sure the NIC is in a safe state. | ||||
| * | New strategy: always stop both base code and UNDI. Always free base code | Michael Brown | 2007-01-08 | 2 | -72/+89 |
| | | | | | | | | | memory (unless we get an error while stopping the base code). Leave UNDI resident (though stopped) for .kpxe. Still need to add code to record the device identification parameters prior to stopping UNDI. | ||||
| * | Add as a separate file so that we can do "make bin/xxxx.kpxe" rather than | Michael Brown | 2007-01-04 | 1 | -0/+7 |
| | | | | | having to edit PXELOADER_KEEP_ALL as a config option. | ||||
| * | Towards making KEEP_IT_REAL work again. | Michael Brown | 2006-08-24 | 1 | -4/+16 |
| | | | | | | Fix bug that caused over-allocation of .text16 and .data16 memory areas by a factor of 16. | ||||
| * | Cut out almost all the optional code paths, drastically simplifying the | Michael Brown | 2006-06-06 | 1 | -375/+143![]() |
| | | | | | | | | | | flow of control through this code. We now always add PCI and PnP headers even for ISA ROMs; there's no harm in doing so. UNDI loader is still missing. | ||||

