Closed bm16ton closed 1 month ago
I'm currently working on Zen 4/5 support and the current state of the branch is able to parse a lot. Feel free to try it out. There is definitely some more work needed to make replacements work etc.:
+-----+------+-----------+---------+---------------+
| ROM | Addr | Size | FET | AGESA |
+-----+------+-----------+---------+---------------+
| 0 | 0x0 | 0x2000000 | 0x20000 | AGESA_UNKNOWN |
+-----+------+-----------+---------+---------------+
+--+-----------+---------+------------+-------+---------------------+
| | Directory | Addr | Generation | Magic | Secondary Directory |
+--+-----------+---------+------------+-------+---------------------+
| | 0 | 0xc1000 | None | $PSP | |
+--+-----------+---------+------------+-------+---------------------+
+--+---+-------+---------+------+------+----------+--------------+-----------+
| | | Entry | Address | Size | Type | Magic/ID | File Version | File Info |
+--+---+-------+---------+------+------+----------+--------------+-----------+
| | | 0 | 0xc3000 | 0x0 | 0x48 | | | |
| | | 1 | 0xc4000 | 0x0 | 0x4a | | | |
| | | 2 | 0xc3800 | 0x0 | 0x48 | | | |
| | | 3 | 0xc4800 | 0x0 | 0x4a | | | |
+--+---+-------+---------+------+------+----------+--------------+-----------+
+--+-----------+---------+------------+-------+---------------------+
| | Directory | Addr | Generation | Magic | Secondary Directory |
+--+-----------+---------+------------+-------+---------------------+
| | 1 | 0xc5000 | None | $PL2 | 0x4c4000 |
+--+-----------+---------+------------+-------+---------------------+
Warning: Could not verify sha256 checksum for HeaderFile(type=0x5d, address=0x279e00, size=0x12000, len(references)=1)
+--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+
| | | Entry | Address | Size | Type | Magic/ID | File Version | File Info |
+--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+
| | | 0 | 0xc5800 | 0x440 | AMD_PUBLIC_KEY~0x0 | EA7B | 1 | AMD_CODE_SIGN |
| | | 1 | 0xc5d00 | 0x1bc0 | PSP_FW_BOOT_LOADER~0x1 | $PS1 | 0.2D.0.7B | verified(EA7B), sha256_ok |
| | | 2 | 0xc7900 | 0x13800 | PSP_FW_BOOT_LOADER~0x73 | $PS1 | 0.2D.0.7B | verified(8E0A), sha256_ok |
| | | 3 | 0xdb100 | 0x193a0 | PSP_FW_TRUSTED_OS~0x2 | $PS1 | 0.2D.0.7B | verified(DD12), sha256_ok |
| | | 4 | 0xf4500 | 0x1cd60 | SMU_OFFCHIP_FW~0x8 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok |
| | | 5 | 0x111300 | 0x440 | SEC_DBG_PUBLIC_KEY~0x9 | 9FC5 | 1 | verified(EA7B), unknown_key_usage(3) |
| | | 6 | 0xc141 | 0x0 | SOFT_FUSE_CHAIN_01~0xb | | | |
| | | 7 | 0x111800 | 0x22100 | PSP_BOOT_TIME_TRUSTLETS~0xc | $PS1 | 6.A.0.7 | verified(CE84), sha256_ok |
| | | 8 | 0x133900 | 0x13810 | SMU_OFF_CHIP_FW_2~0x12 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok |
| | | 9 | 0x147200 | 0x2300 | DEBUG_UNLOCK~0x13 | $PS1 | 0.2D.0.7B | verified(7BC7), sha256_ok |
| | | 10 | 0x149500 | 0x3100 | 0x1b | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok |
| | | 11 | 0x14c600 | 0x19100 | 0x1c | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok |
| | | 12 | 0x165700 | 0x5100 | 0x1d | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok |
| | | 13 | 0x16a800 | 0x8100 | 0x1f | $PS1 | 0.2D.0.7B | verified(8615), sha256_ok |
| | | 14 | 0x172900 | 0x6c0 | HARDWARE_IP_CONFIG~0x20 | $PS1 | B.1.1.3 | verified(98CC), sha256_ok |
| | | 15 | 0x173000 | 0x6b0 | 0x120 | $PS1 | B.2.1.2 | verified(98CC), sha256_ok |
| | | 16 | 0x173700 | 0x30 | WRAPPED_IKEK~0x21 | | | |
| | | 17 | 0x173900 | 0x5370 | SEC_GASKET~0x24 | $PS1 | D.25.0.A7 | verified(2496), sha256_ok |
| | | 18 | 0x178d00 | 0x48d60 | MP2_FW~0x25 | $PS1 | 9.B.0.5E | verified(C9C6), sha256_ok |
| | | 19 | 0x1c1b00 | 0x10200 | DRIVER_ENTRIES~0x28 | $PS1 | 0.2D.0.7B | verified(DD12), sha256_ok |
| | | 20 | 0x1d1d00 | 0x2a0 | ABL0~0x30 | $PS1 | 42.23.A0.52 | verified(7B55), sha256_ok |
| | | 21 | 0x237c00 | 0x2780 | VBIOS_PRELOAD~0x3c | $PS1 | 20.12.0.20 | verified(C14C), sha256_ok |
| | | 22 | 0x23a400 | 0xa200 | 0x95 | $PS1 | 0.2.14.2 | verified(16C7), sha256_ok |
| | | 23 | 0x244600 | 0x1f00 | TOS_SECURITY_POLICY~0x45 | $PS1 | D.25.40.A7 | verified(2496), sha256_ok |
| | | 24 | 0x246500 | 0x220 | FW_INVALID~0x44 | $PS1 | 0.2.0.17 | verified(82A5), sha256_ok |
| | | 25 | 0x256e00 | 0x6100 | DRTM_TA~0x47 | $PS1 | 4.2D.0.37 | verified(61CE), sha256_ok |
| | | 26 | 0x25cf00 | 0x2680 | KEY_DATABASE~0x50 | $PS1 | 1 | verified(EA7B), sha256_ok |
| | | 27 | 0x25f600 | 0x2480 | TOS_PUBLIC_KEY~0x51 | $PS1 | 1 | verified(EA7B), sha256_ok |
| | | 28 | 0x261b00 | 0x720 | BL_ROLLBACK_SPL~0x55 | $PS1 | 5.2D.0.74 | verified(EA7B), sha256_ok |
| | | 29 | 0x262300 | 0x17ab0 | MSMU_BINARY_0~0x5a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok |
| | | 30 | 0x279e00 | 0x12000 | 0x5d | | 1.3.C.B5 | verified(DB85), sha256_inconsistent |
| | | 31 | 0x28be00 | 0x9a0 | WMOS~0x5c | $PS1 | 0.23.6.16 | verified(8A19), sha256_ok |
| | | 32 | 0x28c800 | 0x60000 | FW_PSP_SMUSCS~0x5f | | | |
| | | 33 | 0x2ec800 | 0x30310 | DMCUB_INS~0x71 | $PS1 | 0.0.97.62 | verified(45B9), sha256_ok |
| | | 34 | 0x31cc00 | 0x210 | 0x76 | $PS1 | 4.0.3.1 | verified(1F34), sha256_ok |
| | | 35 | 0x31e300 | 0x210 | 0x176 | $PS1 | A.0.0.2 | verified(1F34), sha256_ok |
| | | 36 | 0x31f700 | 0xe3c0 | 0x90 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok |
| | | 37 | 0x32db00 | 0x4400 | 0x94 | $PS1 | 0.6.4.1 | verified(298B), sha256_ok |
| | | 38 | 0x331f00 | 0x6d80 | 0x9a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok |
| | | 39 | 0x338d00 | 0x6c80 | 0x9a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok |
| | | 40 | 0x33fa00 | 0x10200 | 0x9b | $PS1 | B.1.2D.0 | verified(6624), sha256_ok |
| | | 41 | 0x34fc00 | 0x10200 | 0x9c | $PS1 | B.1.2D.0 | verified(6624), sha256_ok |
| | | 42 | 0x35fe00 | 0xba0 | 0xa2 | $PS1 | FF.4C.64.0 | compressed, veri-failed(5E2F), sha256_ok |
| | | 43 | 0x4c4000 | 0x400 | 0x49 | | | |
| | | 44 | 0x61000 | 0x20000 | PSP_NV_DATA~0x4 | | | |
| | | 45 | 0x81000 | 0x40000 | PSP_NVRAM~0x54 | | | |
+--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+
+--+-----------+----------+------------+-------+---------------------+
| | Directory | Addr | Generation | Magic | Secondary Directory |
+--+-----------+----------+------------+-------+---------------------+
| | 2 | 0x4c4000 | None | $BL2 | |
+--+-----------+----------+------------+-------+---------------------+
+--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+
| | | Entry | Address | Size | Type | Magic/ID | File Version | File Info |
+--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+
| | | 0 | 0x4c4800 | 0x340 | BIOS_PUBLIC_KEY~0x5 | 3FC7 | 1 | key_missing(60BB), PLATFORM_SECURE_BOOT |
| | | 1 | 0x4c5000 | 0x3000 | APCB~0x60 | | | |
| | | 2 | 0x4c8000 | 0xc000 | APCB_COPY~0x68 | | | |
| | | 3 | 0x4d4000 | 0x3000 | APCB_COPY~0x68 | | | |
| | | 4 | 0x0 | 0x0 | APOB~0x61 | | | |
| | | 5 | 0x1a02000 | 0x580020 | FW_XHCI~0x62 | | | |
| | | 6 | 0x4d7000 | 0x40000 | APOB_NV_COPY~0x63 | | | |
| | | 7 | 0x517000 | 0x6170 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 8 | 0x51d200 | 0x5f70 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 9 | 0x523200 | 0x3110 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 10 | 0x526400 | 0x4940 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 11 | 0x52ae00 | 0x9e0 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 12 | 0x52b800 | 0x250 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 13 | 0x52bb00 | 0x34a0 | PMU_CODE~0x64 | $PS1 | 0.0.FD.6 | compressed, veri-failed(C534), sha256_ok |
| | | 14 | 0x52f000 | 0x6d0 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 15 | 0x52f700 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 16 | 0x52fa00 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 17 | 0x52fd00 | 0x1260 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 18 | 0x531000 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 19 | 0x531300 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 20 | 0x531600 | 0x5e0 | PMU_DATA~0x65 | $PS1 | 0.0.FD.6 | compressed, veri-failed(C534), sha256_ok |
| | | 21 | 0x531c00 | 0x6140 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 22 | 0x537e00 | 0x5ed0 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 23 | 0x53dd00 | 0x33c0 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 24 | 0x541100 | 0x6d0 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 25 | 0x541800 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 26 | 0x541b00 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 27 | 0x541e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 28 | 0x543600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 29 | 0x544e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 30 | 0x546600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 31 | 0x547e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 32 | 0x549600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 33 | 0x54ae00 | 0x260 | MP2_FW_CFG~0x6a | $PS1 | 24.5.22.15 | verified(C9C6), sha256_ok |
| | | 34 | 0x19e0000 | 0x20000 | 0x6d | | | |
| | | 35 | 0x19c0000 | 0x20000 | 0x6d | | | |
| | | 36 | 0x19b0000 | 0x10000 | 0x6d | | | |
+--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+
+--+-----------+----------+------------+-------+---------------------+
| | Directory | Addr | Generation | Magic | Secondary Directory |
+--+-----------+----------+------------+-------+---------------------+
| | 3 | 0x554000 | None | $PL2 | 0x953000 |
+--+-----------+----------+------------+-------+---------------------+
Warning: Could not verify sha256 checksum for HeaderFile(type=0x5d, address=0x708e00, size=0x12000, len(references)=1)
+--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+
| | | Entry | Address | Size | Type | Magic/ID | File Version | File Info |
+--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+
| | | 0 | 0x554800 | 0x440 | AMD_PUBLIC_KEY~0x0 | EA7B | 1 | AMD_CODE_SIGN |
| | | 1 | 0x554d00 | 0x1bc0 | PSP_FW_BOOT_LOADER~0x1 | $PS1 | 0.2D.0.7B | verified(EA7B), sha256_ok |
| | | 2 | 0x556900 | 0x13800 | PSP_FW_BOOT_LOADER~0x73 | $PS1 | 0.2D.0.7B | verified(8E0A), sha256_ok |
| | | 3 | 0x56a100 | 0x193a0 | PSP_FW_TRUSTED_OS~0x2 | $PS1 | 0.2D.0.7B | verified(DD12), sha256_ok |
| | | 4 | 0x583500 | 0x1cd60 | SMU_OFFCHIP_FW~0x8 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok |
| | | 5 | 0x5a0300 | 0x440 | SEC_DBG_PUBLIC_KEY~0x9 | 9FC5 | 1 | verified(EA7B), unknown_key_usage(3) |
| | | 6 | 0xc141 | 0x0 | SOFT_FUSE_CHAIN_01~0xb | | | |
| | | 7 | 0x5a0800 | 0x22100 | PSP_BOOT_TIME_TRUSTLETS~0xc | $PS1 | 6.A.0.7 | verified(CE84), sha256_ok |
| | | 8 | 0x5c2900 | 0x13810 | SMU_OFF_CHIP_FW_2~0x12 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok |
| | | 9 | 0x5d6200 | 0x2300 | DEBUG_UNLOCK~0x13 | $PS1 | 0.2D.0.7B | verified(7BC7), sha256_ok |
| | | 10 | 0x5d8500 | 0x3100 | 0x1b | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok |
| | | 11 | 0x5db600 | 0x19100 | 0x1c | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok |
| | | 12 | 0x5f4700 | 0x5100 | 0x1d | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok |
| | | 13 | 0x5f9800 | 0x8100 | 0x1f | $PS1 | 0.2D.0.7B | verified(8615), sha256_ok |
| | | 14 | 0x601900 | 0x6c0 | HARDWARE_IP_CONFIG~0x20 | $PS1 | B.1.1.3 | verified(98CC), sha256_ok |
| | | 15 | 0x602000 | 0x6b0 | 0x120 | $PS1 | B.2.1.2 | verified(98CC), sha256_ok |
| | | 16 | 0x602700 | 0x30 | WRAPPED_IKEK~0x21 | | | |
| | | 17 | 0x602900 | 0x5370 | SEC_GASKET~0x24 | $PS1 | D.25.0.A7 | verified(2496), sha256_ok |
| | | 18 | 0x607d00 | 0x48d60 | MP2_FW~0x25 | $PS1 | 9.B.0.5E | verified(C9C6), sha256_ok |
| | | 19 | 0x650b00 | 0x10200 | DRIVER_ENTRIES~0x28 | $PS1 | 0.2D.0.7B | verified(DD12), sha256_ok |
| | | 20 | 0x660d00 | 0x2a0 | ABL0~0x30 | $PS1 | 42.23.A0.52 | verified(7B55), sha256_ok |
| | | 21 | 0x6c6c00 | 0x2780 | VBIOS_PRELOAD~0x3c | $PS1 | 20.12.0.20 | verified(C14C), sha256_ok |
| | | 22 | 0x6c9400 | 0xa200 | 0x95 | $PS1 | 0.2.14.2 | verified(16C7), sha256_ok |
| | | 23 | 0x6d3600 | 0x1f00 | TOS_SECURITY_POLICY~0x45 | $PS1 | D.25.40.A7 | verified(2496), sha256_ok |
| | | 24 | 0x6d5500 | 0x220 | FW_INVALID~0x44 | $PS1 | 0.2.0.17 | verified(82A5), sha256_ok |
| | | 25 | 0x6e5e00 | 0x6100 | DRTM_TA~0x47 | $PS1 | 4.2D.0.37 | verified(61CE), sha256_ok |
| | | 26 | 0x6ebf00 | 0x2680 | KEY_DATABASE~0x50 | $PS1 | 1 | verified(EA7B), sha256_ok |
| | | 27 | 0x6ee600 | 0x2480 | TOS_PUBLIC_KEY~0x51 | $PS1 | 1 | verified(EA7B), sha256_ok |
| | | 28 | 0x6f0b00 | 0x720 | BL_ROLLBACK_SPL~0x55 | $PS1 | 5.2D.0.74 | verified(EA7B), sha256_ok |
| | | 29 | 0x6f1300 | 0x17ab0 | MSMU_BINARY_0~0x5a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok |
| | | 30 | 0x708e00 | 0x12000 | 0x5d | | 1.3.C.B5 | verified(DB85), sha256_inconsistent |
| | | 31 | 0x71ae00 | 0x9a0 | WMOS~0x5c | $PS1 | 0.23.6.16 | verified(8A19), sha256_ok |
| | | 32 | 0x71b800 | 0x60000 | FW_PSP_SMUSCS~0x5f | | | |
| | | 33 | 0x77b800 | 0x30310 | DMCUB_INS~0x71 | $PS1 | 0.0.97.62 | verified(45B9), sha256_ok |
| | | 34 | 0x7abc00 | 0x210 | 0x76 | $PS1 | 4.0.3.1 | verified(1F34), sha256_ok |
| | | 35 | 0x7ad300 | 0x210 | 0x176 | $PS1 | A.0.0.2 | verified(1F34), sha256_ok |
| | | 36 | 0x7ae700 | 0xe3c0 | 0x90 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok |
| | | 37 | 0x7bcb00 | 0x4400 | 0x94 | $PS1 | 0.6.4.1 | verified(298B), sha256_ok |
| | | 38 | 0x7c0f00 | 0x6d80 | 0x9a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok |
| | | 39 | 0x7c7d00 | 0x6c80 | 0x9a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok |
| | | 40 | 0x7cea00 | 0x10200 | 0x9b | $PS1 | B.1.2D.0 | verified(6624), sha256_ok |
| | | 41 | 0x7dec00 | 0x10200 | 0x9c | $PS1 | B.1.2D.0 | verified(6624), sha256_ok |
| | | 42 | 0x7eee00 | 0xba0 | 0xa2 | $PS1 | FF.4C.64.0 | compressed, veri-failed(5E2F), sha256_ok |
| | | 43 | 0x953000 | 0x400 | 0x49 | | | |
| | | 44 | 0x61000 | 0x20000 | PSP_NV_DATA~0x4 | | | |
| | | 45 | 0x81000 | 0x40000 | PSP_NVRAM~0x54 | | | |
+--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+
+--+-----------+----------+------------+-------+---------------------+
| | Directory | Addr | Generation | Magic | Secondary Directory |
+--+-----------+----------+------------+-------+---------------------+
| | 4 | 0x953000 | None | $BL2 | |
+--+-----------+----------+------------+-------+---------------------+
+--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+
| | | Entry | Address | Size | Type | Magic/ID | File Version | File Info |
+--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+
| | | 0 | 0x953800 | 0x340 | BIOS_PUBLIC_KEY~0x5 | 3FC7 | 1 | key_missing(60BB), PLATFORM_SECURE_BOOT |
| | | 1 | 0x954000 | 0x3000 | APCB~0x60 | | | |
| | | 2 | 0x957000 | 0xc000 | APCB_COPY~0x68 | | | |
| | | 3 | 0x963000 | 0x3000 | APCB_COPY~0x68 | | | |
| | | 4 | 0x0 | 0x0 | APOB~0x61 | | | |
| | | 5 | 0x1a02000 | 0x580020 | FW_XHCI~0x62 | | | |
| | | 6 | 0x966000 | 0x40000 | APOB_NV_COPY~0x63 | | | |
| | | 7 | 0x9a6000 | 0x6170 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 8 | 0x9ac200 | 0x5f70 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 9 | 0x9b2200 | 0x3110 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 10 | 0x9b5400 | 0x4940 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 11 | 0x9b9e00 | 0x9e0 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 12 | 0x9ba800 | 0x250 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 13 | 0x9bab00 | 0x34a0 | PMU_CODE~0x64 | $PS1 | 0.0.FD.6 | compressed, veri-failed(C534), sha256_ok |
| | | 14 | 0x9be000 | 0x6d0 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 15 | 0x9be700 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 16 | 0x9bea00 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 17 | 0x9bed00 | 0x1260 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 18 | 0x9c0000 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 19 | 0x9c0300 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok |
| | | 20 | 0x9c0600 | 0x5e0 | PMU_DATA~0x65 | $PS1 | 0.0.FD.6 | compressed, veri-failed(C534), sha256_ok |
| | | 21 | 0x9c0c00 | 0x6140 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 22 | 0x9c6e00 | 0x5ed0 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 23 | 0x9ccd00 | 0x33c0 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 24 | 0x9d0100 | 0x6d0 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 25 | 0x9d0800 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 26 | 0x9d0b00 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok |
| | | 27 | 0x9d0e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 28 | 0x9d2600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 29 | 0x9d3e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 30 | 0x9d5600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 31 | 0x9d6e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 32 | 0x9d8600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | |
| | | 33 | 0x9d9e00 | 0x260 | MP2_FW_CFG~0x6a | $PS1 | 24.5.22.15 | verified(C9C6), sha256_ok |
| | | 34 | 0x19e0000 | 0x20000 | 0x6d | | | |
| | | 35 | 0x19c0000 | 0x20000 | 0x6d | | | |
| | | 36 | 0x19b0000 | 0x10000 | 0x6d | | | |
+--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+
+--+-----------+---------+------------+-------+---------------------+
| | Directory | Addr | Generation | Magic | Secondary Directory |
+--+-----------+---------+------------+-------+---------------------+
| | 5 | 0xc2000 | None | $PSP | |
+--+-----------+---------+------------+-------+---------------------+
+--+---+-------+---------+------+------+----------+--------------+-----------+
| | | Entry | Address | Size | Type | Magic/ID | File Version | File Info |
+--+---+-------+---------+------+------+----------+--------------+-----------+
| | | 0 | 0xc3000 | 0x0 | 0x48 | | | |
| | | 1 | 0xc4000 | 0x0 | 0x4a | | | |
| | | 2 | 0xc3800 | 0x0 | 0x48 | | | |
| | | 3 | 0xc4800 | 0x0 | 0x4a | | | |
+--+---+-------+---------+------+------+----------+--------------+-----------+
Im sorry for late reply, never noticed notification. I was able to forrest gump my way thru to getting mostly the info you have here, mine if i recall said "key missing" for almost all, which is expected. But your says verified failed with more robust info. I have what i believe is called RecoveryAB, I see your example has 0x4a 0x48 for PSP level A and B, never got those figured out. I only have a 32mb chip and a 32mb uefi rom but if I take a backup I get 64mb, This tool also shows everything twice. I can see how clever address rearranging could allow this, but as for a recovery mechanism it makes no sense to have same data source for both install and its recovery because one corrupts the other. So maybe i read to much into its name, or its something else that confused. Sorry for the rant, tired. I look forward to using you branch.Again unbelievably awesome project, heart felt thankyou.
So output from new branch. Looking good and it seems to have less repeat prints then og.
Warning: Input file is 0x2000000, will assume ROM size of 32M Warning: ParseError from DirectoryEntry(self.type=0x8d, self.type_flags=0x0, self.size=0x30, self.offset=0xae800, self.rsv0=0x80000000): File should not have both sha256 and sha384 checksum bits set! Warning: ParseError from BiosDirectoryEntry(self.type=0x62, self.type_flags=0xb, self.size=0x580020, self.offset=0x1d02000, self.rsv0=0x40000000, self.destination=0x9a7ffe0): Cannot create child buffer: overflows parent buffer's bounds! Warning: ParseError from DirectoryEntry(self.type=0x8d, self.type_flags=0x0, self.size=0x30, self.offset=0xae800, self.rsv0=0x80000000): File should not have both sha256 and sha384 checksum bits set! Warning: ParseError from BiosDirectoryEntry(self.type=0x62, self.type_flags=0xb, self.size=0x580020, self.offset=0x1d02000, self.rsv0=0x40000000, self.destination=0x9a7ffe0): Cannot create child buffer: overflows parent buffer's bounds! +-----+------+-----------+---------+---------------+ | ROM | Addr | Size | FET | AGESA | +-----+------+-----------+---------+---------------+ | 0 | 0x0 | 0x2000000 | 0x20000 | AGESA_UNKNOWN | +-----+------+-----------+---------+---------------+ +--+-----------+---------+------------+-------+---------------------+ | | Directory | Addr | Generation | Magic | Secondary Directory | +--+-----------+---------+------------+-------+---------------------+ | | 0 | 0xc1000 | None | $PSP | | +--+-----------+---------+------------+-------+---------------------+ +--+---+-------+---------+------+------+----------+--------------+-----------+ | | | Entry | Address | Size | Type | Magic/ID | File Version | File Info | +--+---+-------+---------+------+------+----------+--------------+-----------+ | | | 0 | 0xc3000 | 0x0 | 0x48 | | | | | | | 1 | 0xc4000 | 0x0 | 0x4a | | | | | | | 2 | 0xc3800 | 0x0 | 0x48 | | | | | | | 3 | 0xc4800 | 0x0 | 0x4a | | | | +--+---+-------+---------+------+------+----------+--------------+-----------+
+--+-----------+---------+------------+-------+---------------------+ | | Directory | Addr | Generation | Magic | Secondary Directory | +--+-----------+---------+------------+-------+---------------------+ | | 1 | 0xc5000 | None | $PL2 | 0x4c4000 | +--+-----------+---------+------------+-------+---------------------+ Warning: Could not verify sha256 checksum for HeaderFile(type=0x5d, address=0x279e00, size=0x12000, len(references)=1) +--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+ | | | Entry | Address | Size | Type | Magic/ID | File Version | File Info | +--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+ | | | 0 | 0xc5800 | 0x440 | AMD_PUBLIC_KEY~0x0 | EA7B | 1 | AMD_CODE_SIGN | | | | 1 | 0xc5d00 | 0x1bc0 | PSP_FW_BOOT_LOADER~0x1 | $PS1 | 0.2D.0.7B | verified(EA7B), sha256_ok | | | | 2 | 0xc7900 | 0x13800 | PSP_FW_BOOT_LOADER~0x73 | $PS1 | 0.2D.0.7B | verified(8E0A), sha256_ok | | | | 3 | 0xdb100 | 0x193a0 | PSP_FW_TRUSTED_OS~0x2 | $PS1 | 0.2D.0.7B | verified(DD12), sha256_ok | | | | 4 | 0xf4500 | 0x1cd60 | SMU_OFFCHIP_FW~0x8 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok | | | | 5 | 0x111300 | 0x440 | SEC_DBG_PUBLIC_KEY~0x9 | 9FC5 | 1 | verified(EA7B), unknown_key_usage(3) | | | | 6 | 0xc141 | 0x0 | SOFT_FUSE_CHAIN_01~0xb | | | | | | | 7 | 0x111800 | 0x22100 | PSP_BOOT_TIME_TRUSTLETS~0xc | $PS1 | 6.A.0.7 | verified(CE84), sha256_ok | | | | 8 | 0x133900 | 0x13810 | SMU_OFF_CHIP_FW_2~0x12 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok | | | | 9 | 0x147200 | 0x2300 | DEBUG_UNLOCK~0x13 | $PS1 | 0.2D.0.7B | verified(7BC7), sha256_ok | | | | 10 | 0x149500 | 0x3100 | 0x1b | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok | | | | 11 | 0x14c600 | 0x19100 | 0x1c | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok | | | | 12 | 0x165700 | 0x5100 | 0x1d | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok | | | | 13 | 0x16a800 | 0x8100 | 0x1f | $PS1 | 0.2D.0.7B | verified(8615), sha256_ok | | | | 14 | 0x172900 | 0x6c0 | HARDWARE_IP_CONFIG~0x20 | $PS1 | B.1.1.3 | verified(98CC), sha256_ok | | | | 15 | 0x173000 | 0x6b0 | 0x120 | $PS1 | B.2.1.2 | verified(98CC), sha256_ok | | | | 16 | 0x173700 | 0x30 | WRAPPED_IKEK~0x21 | | | | | | | 17 | 0x173900 | 0x5370 | SEC_GASKET~0x24 | $PS1 | D.25.0.A7 | verified(2496), sha256_ok | | | | 18 | 0x178d00 | 0x48d60 | MP2_FW~0x25 | $PS1 | 9.B.0.5E | verified(C9C6), sha256_ok | | | | 19 | 0x1c1b00 | 0x10200 | DRIVER_ENTRIES~0x28 | $PS1 | 0.2D.0.7B | verified(DD12), sha256_ok | | | | 20 | 0x1d1d00 | 0x2a0 | ABL0~0x30 | $PS1 | 42.23.A0.52 | verified(7B55), sha256_ok | | | | 21 | 0x237c00 | 0x2780 | VBIOS_PRELOAD~0x3c | $PS1 | 20.12.0.20 | verified(C14C), sha256_ok | | | | 22 | 0x23a400 | 0xa200 | 0x95 | $PS1 | 0.2.14.2 | verified(16C7), sha256_ok | | | | 23 | 0x244600 | 0x1f00 | TOS_SECURITY_POLICY~0x45 | $PS1 | D.25.40.A7 | verified(2496), sha256_ok | | | | 24 | 0x246500 | 0x220 | FW_INVALID~0x44 | $PS1 | 0.2.0.17 | verified(82A5), sha256_ok | | | | 25 | 0x256e00 | 0x6100 | DRTM_TA~0x47 | $PS1 | 4.2D.0.37 | verified(61CE), sha256_ok | | | | 26 | 0x25cf00 | 0x2680 | KEY_DATABASE~0x50 | $PS1 | 1 | verified(EA7B), sha256_ok | | | | 27 | 0x25f600 | 0x2480 | TOS_PUBLIC_KEY~0x51 | $PS1 | 1 | verified(EA7B), sha256_ok | | | | 28 | 0x261b00 | 0x720 | BL_ROLLBACK_SPL~0x55 | $PS1 | 5.2D.0.74 | verified(EA7B), sha256_ok | | | | 29 | 0x262300 | 0x17ab0 | MSMU_BINARY_0~0x5a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok | | | | 30 | 0x279e00 | 0x12000 | 0x5d | | 1.3.C.B5 | verified(DB85), sha256_inconsistent | | | | 31 | 0x28be00 | 0x9a0 | WMOS~0x5c | $PS1 | 0.23.6.16 | verified(8A19), sha256_ok | | | | 32 | 0x28c800 | 0x60000 | FW_PSP_SMUSCS~0x5f | | | | | | | 33 | 0x2ec800 | 0x30310 | DMCUB_INS~0x71 | $PS1 | 0.0.97.62 | verified(45B9), sha256_ok | | | | 34 | 0x31cc00 | 0x210 | 0x76 | $PS1 | 4.0.3.1 | verified(1F34), sha256_ok | | | | 35 | 0x31e300 | 0x210 | 0x176 | $PS1 | A.0.0.2 | verified(1F34), sha256_ok | | | | 36 | 0x31f700 | 0xe3c0 | 0x90 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok | | | | 37 | 0x32db00 | 0x4400 | 0x94 | $PS1 | 0.6.4.1 | verified(298B), sha256_ok | | | | 38 | 0x331f00 | 0x6d80 | 0x9a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok | | | | 39 | 0x338d00 | 0x6c80 | 0x9a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok | | | | 40 | 0x33fa00 | 0x10200 | 0x9b | $PS1 | B.1.2D.0 | verified(6624), sha256_ok | | | | 41 | 0x34fc00 | 0x10200 | 0x9c | $PS1 | B.1.2D.0 | verified(6624), sha256_ok | | | | 42 | 0x35fe00 | 0xba0 | 0xa2 | $PS1 | FF.4C.64.0 | compressed, veri-failed(5E2F), sha256_ok | | | | 43 | 0x4c4000 | 0x400 | 0x49 | | | | | | | 44 | 0x61000 | 0x20000 | PSP_NV_DATA~0x4 | | | | | | | 45 | 0x81000 | 0x40000 | PSP_NVRAM~0x54 | | | | +--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+
+--+-----------+----------+------------+-------+---------------------+ | | Directory | Addr | Generation | Magic | Secondary Directory | +--+-----------+----------+------------+-------+---------------------+ | | 2 | 0x4c4000 | None | $BL2 | | +--+-----------+----------+------------+-------+---------------------+ +--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+ | | | Entry | Address | Size | Type | Magic/ID | File Version | File Info | +--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+ | | | 0 | 0x4c4800 | 0x340 | BIOS_PUBLIC_KEY~0x5 | 3FC7 | 1 | key_missing(60BB), PLATFORM_SECURE_BOOT | | | | 1 | 0x4c5000 | 0x3000 | APCB~0x60 | | | | | | | 2 | 0x4c8000 | 0xc000 | APCB_COPY~0x68 | | | | | | | 3 | 0x4d4000 | 0x3000 | APCB_COPY~0x68 | | | | | | | 4 | 0x0 | 0x0 | APOB~0x61 | | | | | | | 5 | 0x1a02000 | 0x580020 | FW_XHCI~0x62 | | | | | | | 6 | 0x4d7000 | 0x40000 | APOB_NV_COPY~0x63 | | | | | | | 7 | 0x517000 | 0x6170 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 8 | 0x51d200 | 0x5f70 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 9 | 0x523200 | 0x3110 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 10 | 0x526400 | 0x4940 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 11 | 0x52ae00 | 0x9e0 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 12 | 0x52b800 | 0x250 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 13 | 0x52bb00 | 0x34a0 | PMU_CODE~0x64 | $PS1 | 0.0.FD.6 | compressed, veri-failed(C534), sha256_ok | | | | 14 | 0x52f000 | 0x6d0 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 15 | 0x52f700 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 16 | 0x52fa00 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 17 | 0x52fd00 | 0x1260 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 18 | 0x531000 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 19 | 0x531300 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 20 | 0x531600 | 0x5e0 | PMU_DATA~0x65 | $PS1 | 0.0.FD.6 | compressed, veri-failed(C534), sha256_ok | | | | 21 | 0x531c00 | 0x6140 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 22 | 0x537e00 | 0x5ed0 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 23 | 0x53dd00 | 0x33c0 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 24 | 0x541100 | 0x6d0 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 25 | 0x541800 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 26 | 0x541b00 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 27 | 0x541e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 28 | 0x543600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 29 | 0x544e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 30 | 0x546600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 31 | 0x547e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 32 | 0x549600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 33 | 0x54ae00 | 0x260 | MP2_FW_CFG~0x6a | $PS1 | 24.5.22.15 | verified(C9C6), sha256_ok | | | | 34 | 0x19e0000 | 0x20000 | 0x6d | | | | | | | 35 | 0x19c0000 | 0x20000 | 0x6d | | | | | | | 36 | 0x19b0000 | 0x10000 | 0x6d | | | | +--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+
+--+-----------+----------+------------+-------+---------------------+ | | Directory | Addr | Generation | Magic | Secondary Directory | +--+-----------+----------+------------+-------+---------------------+ | | 3 | 0x554000 | None | $PL2 | 0x953000 | +--+-----------+----------+------------+-------+---------------------+ Warning: Could not verify sha256 checksum for HeaderFile(type=0x5d, address=0x708e00, size=0x12000, len(references)=1) +--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+ | | | Entry | Address | Size | Type | Magic/ID | File Version | File Info | +--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+ | | | 0 | 0x554800 | 0x440 | AMD_PUBLIC_KEY~0x0 | EA7B | 1 | AMD_CODE_SIGN | | | | 1 | 0x554d00 | 0x1bc0 | PSP_FW_BOOT_LOADER~0x1 | $PS1 | 0.2D.0.7B | verified(EA7B), sha256_ok | | | | 2 | 0x556900 | 0x13800 | PSP_FW_BOOT_LOADER~0x73 | $PS1 | 0.2D.0.7B | verified(8E0A), sha256_ok | | | | 3 | 0x56a100 | 0x193a0 | PSP_FW_TRUSTED_OS~0x2 | $PS1 | 0.2D.0.7B | verified(DD12), sha256_ok | | | | 4 | 0x583500 | 0x1cd60 | SMU_OFFCHIP_FW~0x8 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok | | | | 5 | 0x5a0300 | 0x440 | SEC_DBG_PUBLIC_KEY~0x9 | 9FC5 | 1 | verified(EA7B), unknown_key_usage(3) | | | | 6 | 0xc141 | 0x0 | SOFT_FUSE_CHAIN_01~0xb | | | | | | | 7 | 0x5a0800 | 0x22100 | PSP_BOOT_TIME_TRUSTLETS~0xc | $PS1 | 6.A.0.7 | verified(CE84), sha256_ok | | | | 8 | 0x5c2900 | 0x13810 | SMU_OFF_CHIP_FW_2~0x12 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok | | | | 9 | 0x5d6200 | 0x2300 | DEBUG_UNLOCK~0x13 | $PS1 | 0.2D.0.7B | verified(7BC7), sha256_ok | | | | 10 | 0x5d8500 | 0x3100 | 0x1b | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok | | | | 11 | 0x5db600 | 0x19100 | 0x1c | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok | | | | 12 | 0x5f4700 | 0x5100 | 0x1d | $PS1 | 0.2D.0.7B | verified(CE84), sha256_ok | | | | 13 | 0x5f9800 | 0x8100 | 0x1f | $PS1 | 0.2D.0.7B | verified(8615), sha256_ok | | | | 14 | 0x601900 | 0x6c0 | HARDWARE_IP_CONFIG~0x20 | $PS1 | B.1.1.3 | verified(98CC), sha256_ok | | | | 15 | 0x602000 | 0x6b0 | 0x120 | $PS1 | B.2.1.2 | verified(98CC), sha256_ok | | | | 16 | 0x602700 | 0x30 | WRAPPED_IKEK~0x21 | | | | | | | 17 | 0x602900 | 0x5370 | SEC_GASKET~0x24 | $PS1 | D.25.0.A7 | verified(2496), sha256_ok | | | | 18 | 0x607d00 | 0x48d60 | MP2_FW~0x25 | $PS1 | 9.B.0.5E | verified(C9C6), sha256_ok | | | | 19 | 0x650b00 | 0x10200 | DRIVER_ENTRIES~0x28 | $PS1 | 0.2D.0.7B | verified(DD12), sha256_ok | | | | 20 | 0x660d00 | 0x2a0 | ABL0~0x30 | $PS1 | 42.23.A0.52 | verified(7B55), sha256_ok | | | | 21 | 0x6c6c00 | 0x2780 | VBIOS_PRELOAD~0x3c | $PS1 | 20.12.0.20 | verified(C14C), sha256_ok | | | | 22 | 0x6c9400 | 0xa200 | 0x95 | $PS1 | 0.2.14.2 | verified(16C7), sha256_ok | | | | 23 | 0x6d3600 | 0x1f00 | TOS_SECURITY_POLICY~0x45 | $PS1 | D.25.40.A7 | verified(2496), sha256_ok | | | | 24 | 0x6d5500 | 0x220 | FW_INVALID~0x44 | $PS1 | 0.2.0.17 | verified(82A5), sha256_ok | | | | 25 | 0x6e5e00 | 0x6100 | DRTM_TA~0x47 | $PS1 | 4.2D.0.37 | verified(61CE), sha256_ok | | | | 26 | 0x6ebf00 | 0x2680 | KEY_DATABASE~0x50 | $PS1 | 1 | verified(EA7B), sha256_ok | | | | 27 | 0x6ee600 | 0x2480 | TOS_PUBLIC_KEY~0x51 | $PS1 | 1 | verified(EA7B), sha256_ok | | | | 28 | 0x6f0b00 | 0x720 | BL_ROLLBACK_SPL~0x55 | $PS1 | 5.2D.0.74 | verified(EA7B), sha256_ok | | | | 29 | 0x6f1300 | 0x17ab0 | MSMU_BINARY_0~0x5a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok | | | | 30 | 0x708e00 | 0x12000 | 0x5d | | 1.3.C.B5 | verified(DB85), sha256_inconsistent | | | | 31 | 0x71ae00 | 0x9a0 | WMOS~0x5c | $PS1 | 0.23.6.16 | verified(8A19), sha256_ok | | | | 32 | 0x71b800 | 0x60000 | FW_PSP_SMUSCS~0x5f | | | | | | | 33 | 0x77b800 | 0x30310 | DMCUB_INS~0x71 | $PS1 | 0.0.97.62 | verified(45B9), sha256_ok | | | | 34 | 0x7abc00 | 0x210 | 0x76 | $PS1 | 4.0.3.1 | verified(1F34), sha256_ok | | | | 35 | 0x7ad300 | 0x210 | 0x176 | $PS1 | A.0.0.2 | verified(1F34), sha256_ok | | | | 36 | 0x7ae700 | 0xe3c0 | 0x90 | $PS1 | 0.4C.53.0 | compressed, veri-failed(D63D), sha256_ok | | | | 37 | 0x7bcb00 | 0x4400 | 0x94 | $PS1 | 0.6.4.1 | verified(298B), sha256_ok | | | | 38 | 0x7c0f00 | 0x6d80 | 0x9a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok | | | | 39 | 0x7c7d00 | 0x6c80 | 0x9a | $PS1 | FF.4C.67.0 | compressed, veri-failed(5E2F), sha256_ok | | | | 40 | 0x7cea00 | 0x10200 | 0x9b | $PS1 | B.1.2D.0 | verified(6624), sha256_ok | | | | 41 | 0x7dec00 | 0x10200 | 0x9c | $PS1 | B.1.2D.0 | verified(6624), sha256_ok | | | | 42 | 0x7eee00 | 0xba0 | 0xa2 | $PS1 | FF.4C.64.0 | compressed, veri-failed(5E2F), sha256_ok | | | | 43 | 0x953000 | 0x400 | 0x49 | | | | | | | 44 | 0x61000 | 0x20000 | PSP_NV_DATA~0x4 | | | | | | | 45 | 0x81000 | 0x40000 | PSP_NVRAM~0x54 | | | | +--+---+-------+----------+---------+-----------------------------+----------+--------------+------------------------------------------+
+--+-----------+----------+------------+-------+---------------------+ | | Directory | Addr | Generation | Magic | Secondary Directory | +--+-----------+----------+------------+-------+---------------------+ | | 4 | 0x953000 | None | $BL2 | | +--+-----------+----------+------------+-------+---------------------+ +--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+ | | | Entry | Address | Size | Type | Magic/ID | File Version | File Info | +--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+ | | | 0 | 0x953800 | 0x340 | BIOS_PUBLIC_KEY~0x5 | 3FC7 | 1 | key_missing(60BB), PLATFORM_SECURE_BOOT | | | | 1 | 0x954000 | 0x3000 | APCB~0x60 | | | | | | | 2 | 0x957000 | 0xc000 | APCB_COPY~0x68 | | | | | | | 3 | 0x963000 | 0x3000 | APCB_COPY~0x68 | | | | | | | 4 | 0x0 | 0x0 | APOB~0x61 | | | | | | | 5 | 0x1a02000 | 0x580020 | FW_XHCI~0x62 | | | | | | | 6 | 0x966000 | 0x40000 | APOB_NV_COPY~0x63 | | | | | | | 7 | 0x9a6000 | 0x6170 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 8 | 0x9ac200 | 0x5f70 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 9 | 0x9b2200 | 0x3110 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 10 | 0x9b5400 | 0x4940 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 11 | 0x9b9e00 | 0x9e0 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 12 | 0x9ba800 | 0x250 | PMU_CODE~0x64 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 13 | 0x9bab00 | 0x34a0 | PMU_CODE~0x64 | $PS1 | 0.0.FD.6 | compressed, veri-failed(C534), sha256_ok | | | | 14 | 0x9be000 | 0x6d0 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 15 | 0x9be700 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 16 | 0x9bea00 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 17 | 0x9bed00 | 0x1260 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 18 | 0x9c0000 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 19 | 0x9c0300 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.22.5 | compressed, veri-failed(C534), sha384_ok | | | | 20 | 0x9c0600 | 0x5e0 | PMU_DATA~0x65 | $PS1 | 0.0.FD.6 | compressed, veri-failed(C534), sha256_ok | | | | 21 | 0x9c0c00 | 0x6140 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 22 | 0x9c6e00 | 0x5ed0 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 23 | 0x9ccd00 | 0x33c0 | PMU_CODE~0x64 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 24 | 0x9d0100 | 0x6d0 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 25 | 0x9d0800 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 26 | 0x9d0b00 | 0x250 | PMU_DATA~0x65 | $PS1 | 0.0.57.F0 | compressed, veri-failed(C534), sha256_ok | | | | 27 | 0x9d0e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 28 | 0x9d2600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 29 | 0x9d3e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 30 | 0x9d5600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 31 | 0x9d6e00 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 32 | 0x9d8600 | 0x17c0 | MICROCODE_PATCH~0x66 | | | | | | | 33 | 0x9d9e00 | 0x260 | MP2_FW_CFG~0x6a | $PS1 | 24.5.22.15 | verified(C9C6), sha256_ok | | | | 34 | 0x19e0000 | 0x20000 | 0x6d | | | | | | | 35 | 0x19c0000 | 0x20000 | 0x6d | | | | | | | 36 | 0x19b0000 | 0x10000 | 0x6d | | | | +--+---+-------+-----------+----------+----------------------+----------+--------------+------------------------------------------+
+--+-----------+---------+------------+-------+---------------------+ | | Directory | Addr | Generation | Magic | Secondary Directory | +--+-----------+---------+------------+-------+---------------------+ | | 5 | 0xc2000 | None | $PSP | | +--+-----------+---------+------------+-------+---------------------+ +--+---+-------+---------+------+------+----------+--------------+-----------+ | | | Entry | Address | Size | Type | Magic/ID | File Version | File Info | +--+---+-------+---------+------+------+----------+--------------+-----------+ | | | 0 | 0xc3000 | 0x0 | 0x48 | | | | | | | 1 | 0xc4000 | 0x0 | 0x4a | | | | | | | 2 | 0xc3800 | 0x0 | 0x48 | | | | | | | 3 | 0xc4800 | 0x0 | 0x4a | | | | +--+---+-------+---------+------+------+----------+--------------+-----------+
Thanks again. Will hopefully have time soon to see if my apu device has the same discrete setup your test devices had, and if so give the ol power glitch a run. Only area currently above my head/skills is the assembly payloads. Haven't any experience in that area, so itll be a good project. Thanks again
Hello, gpd win4 firmware ver .58 fails to parse, with output
python3 -m psptool ../ARP27058.rom Warning: Couldn't parse entry at: 0xc3000. Type: 0x48. Size 0x100 Warning: Couldn't parse entry at: 0xc4000. Type: 0x4a. Size 0x100 Warning: Couldn't parse entry at: 0xc3800. Type: 0x48. Size 0x100 Warning: Couldn't parse entry at: 0xc4800. Type: 0x4a. Size 0x100 Traceback (most recent call last): File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main return _run_code(code, main_globals, None, File "/usr/lib/python3.10/runpy.py", line 86, in _run_code exec(code, run_globals) File "/ssd1/bios/PSPTool/psptool/main.py", line 225, in
main()
File "/ssd1/bios/PSPTool/psptool/main.py", line 105, in main
psp = PSPTool.from_file(args.file, verbose=args.verbose)
File "/ssd1/bios/PSPTool/psptool/psptool.py", line 33, in from_file
pt = PSPTool(file_bytes, verbose=verbose)
File "/ssd1/bios/PSPTool/psptool/psptool.py", line 41, in init
self.blob = Blob(rom_bytes, len(rom_bytes), self)
File "/ssd1/bios/PSPTool/psptool/blob.py", line 68, in init
potential_rom = Rom(self, rom_size, rom_offset, fet_offset, psptool)
File "/ssd1/bios/PSPTool/psptool/rom.py", line 20, in init
self.fet = Fet(self, fet_offset, psptool)
File "/ssd1/bios/PSPTool/psptool/fet.py", line 45, in init
self._parse_entry_table()
File "/ssd1/bios/PSPTool/psptool/fet.py", line 121, in _parse_entry_table
self._create_directory(rom_addr, dir_magic, zen_generation='unknown')
File "/ssd1/bios/PSPTool/psptool/fet.py", line 92, in _create_directory
secondary_dir = Directory(self.rom, secondary_directory_address, 'secondary', self.psptool, zen_generation)
File "/ssd1/bios/PSPTool/psptool/directory.py", line 76, in init
self._parse_entries()
File "/ssd1/bios/PSPTool/psptool/directory.py", line 140, in _parse_entries
entry_fields['offset'] &= self.rom.addr_mask
KeyError: 'offset'
I looked at the other issues that where seemingly similar, and had small patches to fix. I simply cannot understand python (plus not extremely knowledgeable in this area anyway ). Any help would be greatly apreciated. The bios image used is here if needed, https://github.com/bm16ton/gpd-win4-bios/tree/master . Thank you for your time.