Files
BFM-decomp/src/snd1.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

141 lines
3.3 KiB
C

#include "common.h"
INCLUDE_ASM("asm/nonmatchings/snd1", _SpuInit);
INCLUDE_ASM("asm/nonmatchings/snd1", SpuStart);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003A5B8);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_DC);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003A84C);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_3AC);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_440);
INCLUDE_ASM("asm/nonmatchings/snd1", _spu_FiDMA);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_510);
INCLUDE_ASM("asm/nonmatchings/snd1", _spu_Fr_);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003AB84);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_7C0);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_848);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003AE14);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_8CC);
INCLUDE_ASM("asm/nonmatchings/snd1", _spu_Fr);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003AF04);
void SPU_OBJ_98C(void) {
}
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003AF4C);
void SPU_OBJ_A30(void) {
}
INCLUDE_ASM("asm/nonmatchings/snd1", _spu_FgetRXXa);
void SPU_OBJ_A6C(void) {
}
INCLUDE_ASM("asm/nonmatchings/snd1", _spu_FsetPCR);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_AC4);
INCLUDE_ASM("asm/nonmatchings/snd1", _spu_FsetDelayW);
INCLUDE_ASM("asm/nonmatchings/snd1", _spu_FsetDelayR);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003B0E4);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003B0FC);
INCLUDE_ASM("asm/nonmatchings/snd1", SPU_OBJ_B74);
INCLUDE_ASM("asm/nonmatchings/snd1", _SpuDataCallback);
INCLUDE_ASM("asm/nonmatchings/snd1", SpuQuit);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003B1EC);
void S_SE_OBJ_5C(void) {
}
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003B250);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003B280);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SR_OBJ_B0);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SR_OBJ_B4);
INCLUDE_ASM("asm/nonmatchings/snd1", _SpuIsInAllocateArea);
INCLUDE_ASM("asm/nonmatchings/snd1", S_M_UTIL_OBJ_2C);
void S_M_UTIL_OBJ_78(void) {
}
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003B3D0);
INCLUDE_ASM("asm/nonmatchings/snd1", S_M_UTIL_OBJ_B8);
void S_M_UTIL_OBJ_104(void) {
}
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003B45C);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SRMP_OBJ_170);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SRMP_OBJ_180);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SRMP_OBJ_334);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SRMP_OBJ_420);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SRMP_OBJ_444);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SRMP_OBJ_4C4);
INCLUDE_ASM("asm/nonmatchings/snd1", _spu_setReverbAttr);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003BE24);
INCLUDE_ASM("asm/nonmatchings/snd1", S_RRWA_OBJ_40);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003BE74);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003BE98);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SAV_OBJ_38);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SAV_OBJ_114);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SAV_OBJ_1E8);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SAV_OBJ_1F8);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003C0A0);
INCLUDE_ASM("asm/nonmatchings/snd1", S_CRWA_OBJ_9C);
INCLUDE_ASM("asm/nonmatchings/snd1", S_CRWA_OBJ_100);
INCLUDE_ASM("asm/nonmatchings/snd1", S_CRWA_OBJ_174);
INCLUDE_ASM("asm/nonmatchings/snd1", func_8003C23C);
INCLUDE_ASM("asm/nonmatchings/snd1", S_SK_OBJ_1EC);
void S_SK_OBJ_1F4(void) {
}