mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-26 21:36:06 -04:00
03978ec4ba
- tools/ghidra_import_raw.sh (NEW): raw-blob importer (BinaryLoader + --loader-baseAddr + PSX:LE:32:default) — the Gen2 counterpart to ghidra_import.sh (PS-X-EXE only); reusable for Phase-13 location overlays. Imports the resident blob as program 'resident' @0x800CEDF8. - tools/ghidra_scripts/DefineFunctions.java (NEW): seed splat's validated entry points (.run/<prog>_funcs.txt) — raw-binary auto-analysis finds only the reachable subset (23/143); this defines all 143 (created=120/existed=23/failed=0). R9-verified 143 funcs persisted. - FINDING: DetectPsyQ reports the resident is PsyQ 4.7.0 (the EXE is 4.0.0); the lone in-range PsyQ-signature hit is DsMix (libsnd -> resident holds the sound driver). 4.7 .LIBs DEFERRED to Phase 11 start (Drew); carried to PhaseEnd Notes. Phase 10 needs nothing from 4.7. - config/symbols.resident.txt: seed DsMix (R13 candidate, 4.0-sig vs 4.7 blob — confirm in Phase 11); stacked under symbols.us.txt, applied on re-extract -> resident still 8e17e02f BYTE-IDENTICAL (R22), main still 143dbb89 (no regression) - Makefile: per-binary GHIDRA_PROG -> 'make sig-refresh BINARY=resident' (.run/sig.resident.jsonl) - dup_report.resident now real (6 byte-identical intra-resident groups — Phase-11 dedup fodder) - ghidra DB committed (R23, MCP stopped): new resident program 00000003.* (+ main db.15->16 no-op)
5.5 KiB
5.5 KiB
Unmatched difficulty inventory (generated by tools/difficulty.py — harvest queue)
unmatched functions : 143 trivial (<=5 ins) : 14 non-jtbl leaves : 50 (best harvest targets) jump-table funcs : 5 (deferred — need the rodata-island workflow, Task 2')
Easiest 120 unmatched (score asc) — the work queue
| score | name | nins | br | calls | jtbl | leaf |
|---|---|---|---|---|---|---|
| 4 | func_800CF854 | 4 | 0 | 0 | - | Y |
| 4 | func_800CFBBC | 4 | 0 | 0 | - | Y |
| 4 | func_800CFBE8 | 4 | 0 | 0 | - | Y |
| 4 | func_800D02C0 | 4 | 0 | 0 | - | Y |
| 4 | func_800D1714 | 4 | 0 | 0 | - | Y |
| 4 | func_800D1724 | 4 | 0 | 0 | - | Y |
| 4 | func_800D1734 | 4 | 0 | 0 | - | Y |
| 4 | func_800D1744 | 4 | 0 | 0 | - | Y |
| 5 | func_800CF804 | 5 | 0 | 0 | - | Y |
| 5 | func_800CF818 | 5 | 0 | 0 | - | Y |
| 5 | func_800CF82C | 5 | 0 | 0 | - | Y |
| 5 | func_800CF840 | 5 | 0 | 0 | - | Y |
| 5 | func_800D19DC | 5 | 0 | 0 | - | Y |
| 5 | func_800D3384 | 5 | 0 | 0 | - | Y |
| 6 | func_800CF8B4 | 6 | 0 | 0 | - | Y |
| 6 | func_800CF8CC | 6 | 0 | 0 | - | Y |
| 7 | func_800CFBCC | 7 | 0 | 0 | - | Y |
| 7 | func_800D06CC | 7 | 0 | 0 | - | Y |
| 7 | func_800D1D94 | 7 | 0 | 0 | - | Y |
| 7 | func_800D3104 | 7 | 0 | 0 | - | Y |
| 9 | func_800D1054 | 9 | 0 | 0 | - | Y |
| 9 | func_800D1078 | 9 | 0 | 0 | - | Y |
| 9 | func_800D10C8 | 9 | 0 | 0 | - | Y |
| 10 | DsMix | 8 | 0 | 1 | - | - |
| 10 | func_800CEFB0 | 8 | 0 | 1 | - | - |
| 10 | func_800CF398 | 8 | 0 | 1 | - | - |
| 10 | func_800D0FE0 | 8 | 0 | 1 | - | - |
| 10 | func_800D25FC | 10 | 0 | 0 | - | Y |
| 10 | func_800D30A8 | 8 | 0 | 1 | - | - |
| 10 | func_800D3328 | 8 | 0 | 1 | - | - |
| 10 | func_800D3398 | 8 | 0 | 1 | - | - |
| 11 | func_800D2DFC | 9 | 0 | 1 | - | - |
| 11 | func_800D2EE8 | 9 | 0 | 1 | - | - |
| 11 | func_800D2F8C | 9 | 0 | 1 | - | - |
| 11 | func_800D319C | 9 | 0 | 1 | - | - |
| 12 | func_800D1000 | 10 | 0 | 1 | - | - |
| 12 | func_800D33B8 | 10 | 0 | 1 | - | - |
| 12 | func_800D33E0 | 10 | 0 | 1 | - | - |
| 13 | func_800D0630 | 11 | 0 | 1 | - | - |
| 13 | func_800D0C48 | 11 | 0 | 1 | - | - |
| 13 | func_800D22E4 | 13 | 0 | 0 | - | Y |
| 13 | func_800D2624 | 11 | 0 | 1 | - | - |
| 14 | func_800CEF34 | 10 | 0 | 2 | - | - |
| 14 | func_800CF370 | 10 | 0 | 2 | - | - |
| 14 | func_800D065C | 14 | 0 | 0 | - | Y |
| 14 | func_800D0694 | 14 | 0 | 0 | - | Y |
| 14 | func_800D1F58 | 14 | 0 | 0 | - | Y |
| 14 | func_800D1F90 | 14 | 0 | 0 | - | Y |
| 15 | func_800CF4D4 | 15 | 0 | 0 | - | Y |
| 15 | func_800D0C74 | 11 | 0 | 2 | - | - |
| 15 | func_800D1028 | 11 | 0 | 2 | - | - |
| 15 | func_800D109C | 11 | 0 | 2 | - | - |
| 15 | func_800D2F0C | 15 | 0 | 0 | - | Y |
| 15 | func_800D2FB0 | 15 | 0 | 0 | - | Y |
| 15 | func_800D30C8 | 15 | 0 | 0 | - | Y |
| 15 | func_800D31C0 | 15 | 0 | 0 | - | Y |
| 15 | func_800D31FC | 15 | 0 | 0 | - | Y |
| 15 | func_800D3238 | 15 | 0 | 0 | - | Y |
| 15 | func_800D3348 | 15 | 0 | 0 | - | Y |
| 16 | func_800D2468 | 14 | 0 | 1 | - | - |
| 17 | func_800CFD68 | 15 | 0 | 1 | - | - |
| 18 | func_800D0CA0 | 16 | 0 | 1 | - | - |
| 18 | func_800D2FEC | 16 | 0 | 1 | - | - |
| 19 | func_800CEF04 | 12 | 1 | 2 | - | - |
| 19 | func_800CFDA4 | 17 | 0 | 1 | - | - |
| 20 | func_800CEDFC | 17 | 1 | 0 | - | Y |
| 20 | func_800CEE40 | 17 | 1 | 0 | - | Y |
| 20 | func_800D0F0C | 16 | 0 | 2 | - | - |
| 21 | func_800D2E20 | 19 | 0 | 1 | - | - |
| 21 | func_800D2F48 | 17 | 0 | 2 | - | - |
| 23 | func_800CF764 | 16 | 1 | 2 | - | - |
| 23 | func_800D05E8 | 18 | 1 | 1 | - | - |
| 23 | func_800D0F4C | 16 | 1 | 2 | - | - |
| 23 | func_800D18DC | 23 | 0 | 0 | - | Y |
| 24 | func_800CF94C | 17 | 1 | 2 | - | - |
| 24 | func_800D2DAC | 20 | 0 | 2 | - | - |
| 25 | func_800D1938 | 19 | 0 | 3 | - | - |
| 26 | func_800D0EC4 | 18 | 2 | 1 | - | - |
| 27 | func_800CEF5C | 21 | 0 | 3 | - | - |
| 28 | func_800D32D4 | 21 | 1 | 2 | - | - |
| 29 | func_800D0F8C | 21 | 2 | 1 | - | - |
| 30 | func_800D1984 | 22 | 2 | 1 | - | - |
| 30 | func_800D1B80 | 22 | 2 | 1 | - | - |
| 30 | func_800D2294 | 20 | 2 | 2 | - | - |
| 31 | func_800CF714 | 20 | 1 | 4 | - | - |
| 31 | func_800CF864 | 20 | 3 | 1 | - | - |
| 32 | func_800CF47C | 22 | 2 | 2 | - | - |
| 32 | func_800D2CA8 | 26 | 2 | 0 | - | Y |
| 32 | func_800D3274 | 24 | 2 | 1 | - | - |
| 33 | func_800CF584 | 20 | 3 | 2 | - | - |
| 34 | func_800CF5D4 | 21 | 3 | 2 | - | - |
| 35 | func_800D1754 | 25 | 2 | 2 | - | - |
| 35 | func_800D185C | 32 | 1 | 0 | - | Y |
| 36 | func_800D1B10 | 28 | 0 | 4 | - | - |
| 36 | func_800D1D24 | 28 | 0 | 4 | - | - |
| 36 | func_800D21C4 | 26 | 2 | 2 | - | - |
| 36 | func_800D222C | 26 | 2 | 2 | - | - |
| 37 | func_800D0588 | 24 | 3 | 2 | - | - |
| 38 | func_800CF7A4 | 24 | 2 | 4 | - | - |
| 38 | func_800CFDE8 | 30 | 2 | 1 | - | - |
| 42 | func_800D23D0 | 36 | 0 | 3 | - | - |
| 43 | func_800D0E30 | 37 | 2 | 0 | - | Y |
| 44 | func_800D2E6C | 31 | 1 | 5 | - | - |
| 44 | func_800D302C | 31 | 1 | 5 | - | - |
| 44 | func_800D3120 | 31 | 1 | 5 | - | - |
| 45 | func_800CF8E4 | 26 | 3 | 5 | - | - |
| 45 | func_800CFBF8 | 25 | 6 | 1 | - | - |
| 46 | func_800D1DB0 | 28 | 4 | 3 | - | - |
| 47 | func_800CF510 | 29 | 2 | 6 | - | - |
| 51 | func_800CEE84 | 32 | 1 | 8 | - | - |
| 52 | func_800D0CE0 | 39 | 3 | 2 | - | - |
| 52 | func_800D2318 | 46 | 0 | 3 | - | - |
| 54 | func_800D0214 | 43 | 3 | 1 | - | - |
| 56 | func_800D11F0 | 39 | 3 | 4 | - | - |
| 57 | func_800D0D7C | 45 | 4 | 0 | - | Y |
| 57 | func_800D17B8 | 41 | 4 | 2 | - | - |
| 57 | func_800D2D10 | 39 | 6 | 0 | - | Y |
| 59 | func_800CFAD0 | 59 | 0 | 0 | - | Y |
| 68 | func_800CF3B8 | 49 | 3 | 5 | - | - |
| 68 | func_800D1E28 | 37 | 7 | 5 | - | - |