diff --git a/src/ov_SC03_096/ov_SC03_096_jr_801805B8.c b/src/ov_SC03_096/ov_SC03_096_jr_801805B8.c index 5a82156311..9e613203fb 100644 --- a/src/ov_SC03_096/ov_SC03_096_jr_801805B8.c +++ b/src/ov_SC03_096/ov_SC03_096_jr_801805B8.c @@ -2857,7 +2857,23 @@ void func_801807AC(void *a0) { } -INCLUDE_ASM("asm/ov_SC03_096/nonmatchings/ov_SC03_096_jr_801805B8", func_8018085C); +#include "common.h" + +typedef struct { s32 w[4]; } B16_local; + +extern B16_local D_800A5EA8; +extern B16_local D_80197D18; +extern s32 D_800A5EB0; +extern s32 func_8004787C(s32 a0); +extern void func_80028620(s32 a0, void *a1); + +void func_8018085C(void *a0) { + D_800A5EA8 = D_80197D18; + D_800A5EB0 = func_8004787C(*(s16 *)((s32)a0 + 0xFE)) * 6 / 4096 - 3; + *(u16 *)((s32)a0 + 0xFE) = (*(u16 *)((s32)a0 + 0xFE) + 0x71) & 0xFFF; + func_80028620(2, &D_800A5EA8); +} + /* ยง71 sibling-first: func_80185634 (same TU, already MATCHed) is the exact template.