Hello,
This patch was developed through some guesswork and by examining the debug output of "official" tools. Expected output looks like:
Using file "../882.bin" (1024kB) Found Phoenix BIOS "PhoenixBIOS 4.0 Release 6.1 " Version "DEVEL972", created on 07/07/08 at 15:37:46. BCPSYS module offset is NULL. FFV modules: 5 [ 0]: (00000000-00080000) FED91FBA-D37B-4EEA-8729-2EF29FB37A78 _R00 (00000000-0000819A) 0000819A 00 02 oprom_00.rom _R01 (0000819A-0000FA31) 00007897 00 02 oprom_01.rom _H00 (0000FA31-00014EC3) 00005492 00 02 tcpa_H_00.rom _Q00 (00014EC3-000193B3) 000044F0 00 02 tcpa_Q_00.rom _A00 (000193B3-0001B034) 00001C81 00 02 acpi_00.rom _C00 (0001B038-0001C860) 00001828 02 01 update_00.rom _B05 (0001C860-00027F12) 0000B6B2 00 02 bioscode_05.rom _B02 (00027F12-00031351) 0000943F 00 02 bioscode_02.rom _B03 (00031351-00039238) 00007EE7 00 02 bioscode_03.rom _B00 (00039238-0003E135) 00004EFD 00 02 bioscode_00.rom _K00 (0003E135-00042B33) 000049FE 00 02 tcpa_K_00.rom _T00 (00042B33-000471A2) 0000466F 00 02 template_00.rom _E00 (000471A2-0004B1F0) 0000404E 00 02 setup_00.rom _S00 (0004B1F0-0004EE85) 00003C95 00 02 strings_00.rom _L01 (0004EE85-0005212D) 000032A8 00 02 logo_01.rom _B04 (0005212D-00054DDE) 00002CB1 00 02 bioscode_04.rom _B06 (00054DDE-00057826) 00002A48 00 02 bioscode_06.rom _B01 (00057826-000598EE) 000020C8 00 02 bioscode_01.rom _M00 (000598EE-0005AC93) 000013A5 00 02 miser_00.rom _D00 (0005AC93-0005B82E) 00000B9B 00 02 display_00.rom _Y00 (0005B82E-0005C1E2) 000009B4 00 02 _Y00.rom _L00 (0005C1E2-0005CAA3) 000008C1 00 02 logo_00.rom _G00 (0005CAA3-0005CF07) 00000464 00 02 decompcode_00.rom _A01 (0005CF07-0005CF7F) 00000078 00 02 acpi_01.rom _A02 (0005CF7F-0005CFD1) 00000052 00 02 acpi_02.rom volumeinfo.bin (0005CFD1-0005D031) 00000060 00 01 volumeinfo.bin GAP (0005D031-00080000) 00022FCF 00 F0 [ 1]: (00080000-00082000) FD21E8FD-2525-4A95-BB90-47EC5763FF9E ESCD [ 2]: (00082000-00090000) F6AE0F63-5F8C-4316-A2EA-76B9AF762756 Hole (raw code) [ 3]: (00090000-000F7000) FED91FBA-D37B-4EEA-8729-2EF29FB37A78 volumedir.bin2 (00090008-00090190) 00000188 42 01 volumedir.bin2 volumeinfo.bin (00090190-000901F0) 00000060 00 01 volumeinfo.bin GAP (000901F0-000DFFE8) 0004FDF8 00 F0 _$00 (000DFFE8-000E0004) 0000001C 40 01 _$00.rom _X01 (000E0008-000E9750) 00009748 40 01 romexec_01.rom GAP (000E9750-000ED6E8) 00003F98 00 F0 _X00 (000ED6E8-000F6000) 00008918 40 01 romexec_00.rom GAP (000F6000-000F7000) 00001000 00 F0 [ 4]: (000F7000-00100000) F6AE0F63-5F8C-4316-A2EA-76B9AF762756 Hole (raw code)
Note that many newer Phoenix BIOSes have a trailer containing flash enable information, etc. which must be stripped off for this code to work.
ESCD seems to be "Extended System Configuration Data" (dumped to ESCD.bin) and all holes are dumped to hole_%02x.bin.
Signed-off-by: Joshua Roys roysjosh@gmail.com