mirror of
https://github.com/ipxe/ipxe
synced 2025-12-20 20:10:18 +03:00
[util] Allow Option::ROM to understand and modify initialisation entry point
Add support for manipulating the jump instruction that forms the option ROM initialisation entry point, so that mergerom.pl can treat it just like other entry points. Add support for merging the initialisation entry point (and IBM BOFM table) to mergerom.pl; this is another slightly icky but unfortunately necessary GPL vs. NDA workaround. When mergerom.pl replaces an entry point in the original ROM, it now fills in the corresponding entry point in the merged ROM with the original value; this allows (for example) a merged initialisation entry point to do some processing and then jump back to the original entry point.
This commit is contained in:
@@ -38,6 +38,7 @@ die "ROM image truncated (is $filelength, should be $romlength)\n"
|
||||
printf "ROM header:\n\n";
|
||||
printf " Length:\t0x%02x (%d)\n", $rom->{length}, ( $rom->{length} * 512 );
|
||||
printf " Checksum:\t0x%02x (0x%02x)\n", $rom->{checksum}, $rom->checksum;
|
||||
printf " Init:\t\t0x%04x\n", $rom->{init};
|
||||
printf " UNDI header:\t0x%04x\n", $rom->{undi_header};
|
||||
printf " PCI header:\t0x%04x\n", $rom->{pci_header};
|
||||
printf " PnP header:\t0x%04x\n", $rom->{pnp_header};
|
||||
|
||||
Reference in New Issue
Block a user