Michael Brown
							
						 
						
							
								1949641d10
								
							 
						 
						
							Fix compiler warnings that appear only on OpenBSD. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								89eaab79c8
								
							 
						 
						
							Replace "Etherboot" strings with "gPXE". 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								b8a8eea850
								
							 
						 
						
							Minor refactoring to eliminate duplication. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								dec325fe43
								
							 
						 
						
							Use full protected mode for access to high memory within prefix, to 
							
							 
							work around limitations in real-mode virtualisation support on Intel
VT-capable chips. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								2cfe0dee1f
								
							 
						 
						
							Don't trash the %ecx value returned by relocate().  This was causing 
							
							 
							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). 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								c94cdf2b7d
								
							 
						 
						
							Move .zinfo to libprefix.S; it doesn't belong with the decompression code. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								84551d485e
								
							 
						 
						
							Update all prefixes currently referring to _load_size to include a 
							
							 
							compressor fixup section. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								0929142a15
								
							 
						 
						
							Rename _rom_size to _load_size_sect, since hdprefix.S also uses it. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								048bbeeebc
								
							 
						 
						
							Compressed ROM images now work. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								ab859a5355
								
							 
						 
						
							Use a single _payload_offset linker-defined variable to locate the 
							
							 
							start of the non-prefix blocks in the loaded image, and rely on the
image ordering.  This should make introducing compression much easier. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								0b5059c40b
								
							 
						 
						
							Skip the length field prepended by util/nrv2b.c 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								b37e267d1b
								
							 
						 
						
							Modified calling convention: we now update %esi and %edi just like a 
							
							 
							"rep movsb". 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								3feac9465e
								
							 
						 
						
							"not" doesn't affect flags, "xor $-1" does. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Marty Connor
							
						 
						
							
								28d8d828b3
								
							 
						 
						
							Rename .lilo extension to .lkrn and updated dependencies 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								07ea125213
								
							 
						 
						
							Use partition type 0xeb ("EtherBoot"), to avoid any attempts to mount 
							
							 
							the Etherboot partition. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								6e082c9b81
								
							 
						 
						
							Add .usb target 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								a0f078d7f5
								
							 
						 
						
							Working with multi-sector reads 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								66208dd65d
								
							 
						 
						
							hdprefix that works for LBA only 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								839960276d
								
							 
						 
						
							Miscellaneous efficiency improvements, and extend read_sectors to 
							
							 
							handle multiple sectors. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								3c2d50e5de
								
							 
						 
						
							Added active partition locator, and simple MBR built using it. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								738ebaf4a5
								
							 
						 
						
							Revert "Added master boot record capable of locating active partition" 
							
							 
							
This reverts commit 844d088c51 . 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								844d088c51
								
							 
						 
						
							Added master boot record capable of locating active partition 
							
							 
							(including logical partitions). 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								ac69b85adb
								
							 
						 
						
							UNDI loader entry point implemented; seems to work. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Marty Connor
							
						 
						
							
								79238335b0
								
							 
						 
						
							remove obsolete file:  src/arch/i386/prefix/int19exit.c 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Marty Connor
							
						 
						
							
								9b3c4e4d79
								
							 
						 
						
							Warnings purge: src/arch/i386, src/core/disk.c, ramdisk, autoboot 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								045fb24557
								
							 
						 
						
							Use internal real-mode stack from non-returnable prefixes 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								00473f0952
								
							 
						 
						
							Revert "Move stack to below 0x7c00; leaving it at the default location" 
							
							 
							
This reverts commit 03ca71c38d . 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								03ca71c38d
								
							 
						 
						
							Move stack to below 0x7c00; leaving it at the default location 
							
							 
							(0x7ef4) tends to really screw up anything that loads at 0x7c00... 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								37127ea90c
								
							 
						 
						
							Added .nbi as a format. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								520d9c36af
								
							 
						 
						
							Updated ISAPnP, EISA, MCA and ISA buses to current device model. 
							
							 
							
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. 
							
							
						 
						преди 18 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								7d9267561b
								
							 
						 
						
							Don't call PXENV_STOP_UNDI in the kpxeprefix.  This slighy breaks the 
							
							 
							clean separation between loading and starting, but does mean that more
PXE stacks survive the process. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								b04b0ddc31
								
							 
						 
						
							.lilo and derived targets (e.g. .iso) now load properly. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								dca369ddc3
								
							 
						 
						
							Call hide_etherboot() from startup(), rather than requiring the prefix to 
							
							 
							do it. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								86171c53f4
								
							 
						 
						
							Damn Broadcom and their damned incorrect assumptions about x86 memory 
							
							 
							allocation. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								fdc97499bf
								
							 
						 
						
							Add device description fields to struct device. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								a2be828a33
								
							 
						 
						
							Avoid leaving preloaded_undi with invalid PXENV+/!PXE structure 
							
							 
							addresses if the signature checks fail. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								697bcc9d24
								
							 
						 
						
							Since we now always unload the base code stack (even if we keep UNDI), 
							
							 
							we can never return to the PXE stack and must always use INT 18. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								2436dac281
								
							 
						 
						
							Populate preloaded_undi device when applicable. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								47222d5ed8
								
							 
						 
						
							Call PXENV_UNDI_GET_NIC_TYPE to identify NIC physical device. 
							
							 
							
Record all information required for populating a struct undi_device.
Make debugging output more human-readable. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								fbdebac5f4
								
							 
						 
						
							Copy pxelinux's shutdown sequence: use UNLOAD_STACK without STOP_BASE, 
							
							 
							and call UNDI_SHUTDOWN first to make sure the NIC is in a safe state. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								8f8af10b22
								
							 
						 
						
							New strategy: always stop both base code and UNDI.  Always free base code 
							
							 
							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. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								de2fc50f4c
								
							 
						 
						
							Add as a separate file so that we can do "make bin/xxxx.kpxe" rather than 
							
							 
							having to edit PXELOADER_KEEP_ALL as a config option. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								6abfaa153b
								
							 
						 
						
							Towards making KEEP_IT_REAL work again. 
							
							 
							
Fix bug that caused over-allocation of .text16 and .data16 memory areas
by a factor of 16. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								ef37f78cbe
								
							 
						 
						
							Cut out almost all the optional code paths, drastically simplifying the 
							
							 
							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. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								e7eca7b7cb
								
							 
						 
						
							Code segment may not be writable; create the temporary pointer to the GDT 
							
							 
							on the stack. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								041a04335e
								
							 
						 
						
							Fixed assembly on old versions of gas 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								9f86754f90
								
							 
						 
						
							Updated to work with libprefix. 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								89da833c5d
								
							 
						 
						
							init_librm() and prot_call() are now real-mode far calls. 
							
							 
							
install() now calls relocate(), moves the protected-mode code to the new
location, and calls hide_etherboot(). 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								15ee09ed10
								
							 
						 
						
							Restructured PCI subsystem to fit the new device model. 
							
							 
							
Generic PCI code now handles 64-bit BARs correctly when setting
"membase"; drivers should need to call pci_bar_start() only if they want
to use BARs other than the first memory or I/O BAR.
Split rarely-used PCI functions out into pciextra.c.
Core PCI code is now 662 bytes (down from 1308 bytes in Etherboot 5.4).
284 bytes of this saving comes from the pci/pciextra split.
Cosmetic changes to lots of drivers (e.g. vendor_id->vendor in order to
match the names used in Linux). 
							
							
						 
						преди 19 години  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								832807726a
								
							 
						 
						
							Add infrastructure to support access to .data16 (and .text16) variables 
							
							 
							from protected-mode code.
Set up %ds to point to .data16 in prot_to_real, so that code specified
via REAL_EXEC() and friends can access variables in .data16.
Move most real-mode librm variables from .text16 to .data16. 
							
							
						 
						преди 19 години