feat(phase-31): S79 #9 (4) — md_MAIN_003: func_800D1D14 (65 ins, -O0 island) banked as genuine C (the S76 verbatim body retired): D_800D3630 read as *(s16*)&D_800D3630[i] so gcc materialises the base instead of folding %lo through $at; byte-identical dd1b32ec

This commit is contained in:
Drew T
2026-09-04 19:04:55 -06:00
parent 0833b418e6
commit a296bba0f3
+17 -1
View File
@@ -373,5 +373,21 @@ void func_800D12D0(void) {
}
INCLUDE_ASM("asm/md_MAIN_003/nonmatchings/md_MAIN_003_o0d", func_800D1D14);
#include "common.h"
extern s32 D_800D3630[];
extern u8 D_800D3618[];
extern u8 D_800D3620[];
extern s32 D_800D3624[];
extern void func_8001534C(s32 idx, s32 a1, s16 x, s16 y, u8 arg4, u8 arg5);
void func_800D1D14(s32 arg0, s32 arg1) {
if (arg1 == 0) {
func_8001534C(*(s16 *) &D_800D3630[arg0], (s32) D_800D3618, 0, 0, 0, 0);
} else {
func_8001534C(*(s16 *) &D_800D3630[arg0], D_800D3624[arg0], 0x50, D_800D3620[arg0], 0, 0);
}
}