diff --git a/src/ov_SC04_018/ov_SC04_018_jr_8017AE2C.c b/src/ov_SC04_018/ov_SC04_018_jr_8017AE2C.c index 93e64ce0f7..c377916222 100644 --- a/src/ov_SC04_018/ov_SC04_018_jr_8017AE2C.c +++ b/src/ov_SC04_018/ov_SC04_018_jr_8017AE2C.c @@ -6125,7 +6125,27 @@ void func_80181FE4(void *a0) { INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_8017AE2C", func_8018203C); -INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_8017AE2C", func_80182120); + extern void func_8012E8E0(s32 a0, s32 a1); + extern void func_8012E88C(s32 a0); + extern void func_8012A828(s32*, s32); + extern void func_80184C90(s32); + extern void func_80184ED4(s32, s32, s32, s32); + void func_80182120(void *arg0) { + extern short D_80191C10; + extern s32 D_801B9AA8; + extern u8 D_801B66D8[]; + void *v1; + *(short *)((char *)arg0 + 0x2) = 0x4; + func_8012E8E0((s32)arg0, (s32)&D_80191C10); + v1 = *(void **)((char *)arg0 + 0x20); + *(short *)((char *)v1 + 0x12) = *(short *)((char *)v1 + 0x12) + 0x800; + func_8012E88C((s32)arg0); + ((void (*)(s32 *, s32))func_8012A828)((s32 *)arg0, (s32)&(*(short *)&D_801B9AA8)); + func_80184C90((s32)arg0); + *(short *)((char *)arg0 + 0x34) = 0; + func_80184ED4((s32)arg0, (s32)&(*(short *)D_801B66D8), 0x1, 0x40); + } + extern void func_80184CB8(s32 *a0, s32 a1); extern short D_80191C08; @@ -6709,7 +6729,20 @@ void func_80183938(void *arg0) { INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_8017AE2C", func_801839A8); -INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_8017AE2C", func_80183A08); + extern void func_8012E88C(s32 a0); + extern void func_8012A828(s32*, s32); + extern void func_80184C90(s32 a0); + extern void func_80184ED4(s32 a0, s32 a1, s32 a2, s32 a3); + extern s32 D_801B9C50; + extern short D_801B67C8; + void func_80183A08(s32 a0) { + *(u16 *)(a0 + 2) = 6; + func_8012E88C(a0); + ((void (*)(s32, s32))func_8012A828)(a0, (s32)&D_801B9C50); + func_80184C90(a0); + func_80184ED4(a0, (s32)&(*(s32 *)&D_801B67C8), 1, 0x60); + } + extern void (*D_80192230[])(void);