Files
BFM-decomp/src/800c3.c
T
Drew T 0cda15c6de fix(phase-24): T5c — restore main's clean-rebuild: propagate the Phase-21 PsyQ renames to 62 stub refs
Pre-existing latent breakage (Phase-21 close commit:0292, "+62 PsyQ names"), found during T5b's
R22 fleet verify. A genuinely-clean `make clean` + re-extract + build of `main` failed with
dozens of `can't open asm/nonmatchings/800c3/func_*.s` — clean-rebuild broken since Phase 21,
masked all along by incremental builds reusing stale pre-rename .s/.o (the exact R22 failure mode).

- Root cause (byte-proven): Phase-21 xdedup renamed 62 PsyQ library functions to their proper
  names (InitHeap, FlushCache, GetTPage, SysEnqIntRP, SpuWrite, CdMix, __main …) in
  symbols.us.txt, but never regenerated/renamed the committed src/*.c stub refs that call them by
  the OLD func_<ADDR> name. splat's FRESH regeneration of a stub .c uses the CURATED names (move
  src/800c3.c aside -> splat writes INCLUDE_ASM(InitHeap) + emits InitHeap.s); the committed stubs
  were simply stale.
- Fix: rename all 62 INCLUDE_ASM(func_<ADDR>) -> the curated name across 12 files (800c.c 1,
  800c3.c 22, apicard1/2/4 4/6/2, boot.c 1, libcd1.c 8, libetc.c 6, libgpu.c 3, sgap.c 1,
  snd1.c 7, snd2.c 1). Pure rename to match splat's canonical output; byte-neutral.
- VERIFIED: main clean-builds 143dbb89 from a fully clean tree; full clean fleet check-all 136/136.
- Lesson (cookbook): a symbols.us.txt rename must be propagated to (a) shared-macro bodies
  (engine_core.h — the T5b GetTPage fix) AND (b) INCLUDE_ASM stub refs (this), AND verified by a
  genuinely-clean check-all (make clean + full re-extract), never incremental. Added a lint check.
2026-07-03 02:50:03 -06:00

184 lines
4.8 KiB
C

#include "common.h"
INCLUDE_ASM("asm/nonmatchings/800c3", InitHeap);
INCLUDE_ASM("asm/nonmatchings/800c3", FlushCache);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005CE38);
INCLUDE_ASM("asm/nonmatchings/800c3", _96_remove);
INCLUDE_ASM("asm/nonmatchings/800c3", DeliverEvent);
INCLUDE_ASM("asm/nonmatchings/800c3", OpenEvent);
INCLUDE_ASM("asm/nonmatchings/800c3", CloseEvent);
INCLUDE_ASM("asm/nonmatchings/800c3", WaitEvent);
INCLUDE_ASM("asm/nonmatchings/800c3", TestEvent);
INCLUDE_ASM("asm/nonmatchings/800c3", EnableEvent);
INCLUDE_ASM("asm/nonmatchings/800c3", DisableEvent);
INCLUDE_ASM("asm/nonmatchings/800c3", ReturnFromException);
INCLUDE_ASM("asm/nonmatchings/800c3", ResetEntryInt);
INCLUDE_ASM("asm/nonmatchings/800c3", HookEntryInt);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005CF08);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005CF18);
INCLUDE_ASM("asm/nonmatchings/800c3", read);
INCLUDE_ASM("asm/nonmatchings/800c3", write);
INCLUDE_ASM("asm/nonmatchings/800c3", ChangeClearPAD);
INCLUDE_ASM("asm/nonmatchings/800c3", ChangeClearRCnt);
INCLUDE_ASM("asm/nonmatchings/800c3", SetRCnt);
INCLUDE_ASM("asm/nonmatchings/800c3", GetRCnt);
INCLUDE_ASM("asm/nonmatchings/800c3", StartRCnt);
INCLUDE_ASM("asm/nonmatchings/800c3", StopRCnt);
INCLUDE_ASM("asm/nonmatchings/800c3", ResetRCnt);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D0D8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D0F8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D118);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D138);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D184);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D244);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D33C);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D410);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D4B8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D4F0);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D538);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D588);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D6A0);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D6CC);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D734);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D8A0);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D8B4);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D980);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005D9C4);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005DBD8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005DCA0);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005DE78);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E0AC);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E13C);
INCLUDE_ASM("asm/nonmatchings/800c3", SysEnqIntRP);
INCLUDE_ASM("asm/nonmatchings/800c3", SysDeqIntRP);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E188);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E194);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E1A4);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E228);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E374);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E3AC);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E480);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E528);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E79C);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E804);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E820);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E8E8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E980);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005E9D4);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EA34);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EA54);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EA68);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EA88);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EAA8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EAC8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EAE8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EB28);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005EC00);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005ECC0);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005ED4C);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F0C8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F228);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F290);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F384);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F394);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F450);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F6CC);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F704);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F728);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F75C);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005F830);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005FA94);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005FB70);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005FBA8);
INCLUDE_ASM("asm/nonmatchings/800c3", func_8005FBC8);