From 3e6e7cafd58c0a7fe040827dcda59b94f0af71ba Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Fri, 14 Aug 2026 03:27:33 -0600 Subject: [PATCH] =?UTF-8?q?feat(decomp):=20worker=20gate=20=E2=80=94=20+1?= =?UTF-8?q?=20fns=20x0=20propagated=20(fleet=2095.2%)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ov_SC03_125/ov_SC03_125_jr_8017D604.c | 32 ++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/src/ov_SC03_125/ov_SC03_125_jr_8017D604.c b/src/ov_SC03_125/ov_SC03_125_jr_8017D604.c index 48f1685036..69e79f6430 100644 --- a/src/ov_SC03_125/ov_SC03_125_jr_8017D604.c +++ b/src/ov_SC03_125/ov_SC03_125_jr_8017D604.c @@ -3751,7 +3751,37 @@ void func_8018056C(void *a0) { } -INCLUDE_ASM("asm/ov_SC03_125/nonmatchings/ov_SC03_125_jr_8017D604", func_801805A8); +extern s32 D_801881E8; +extern s32 func_8001CC3C(s32 a0, s32 a1, s32 a2, s32 a3); + +void func_801805A8(void *a0) +{ + s32 *s1 = (s32 *)a0; + s32 *s0; + s32 v0; + s32 v1; + + s0 = M2C_FIELD(s1, s32 *, 0x20); + ((void (*)(s32, s32, s32, s32))func_8001CC3C)((s32)s0, (s32)&D_801881E8, 0x240, 0x1D0); + + v0 = 0x54; + *(u8 *)((s8 *)s0 + 0x27) = v0; + v0 = *(s32 *)((s8 *)s0 + 0x4); + v1 = 0x08000000; + v0 |= v1; + *(s32 *)((s8 *)s0 + 0x4) = v0; + + v0 = *(u16 *)((s8 *)s1 + 0x2C); + *(u16 *)((s8 *)s0 + 0x1A) = v0; + *(u16 *)((s8 *)s0 + 0x18) = v0; + + v0 = *(u16 *)((s8 *)s1 + 0x2); + v1 = 0x20; + *(u16 *)((s8 *)s1 + 0x2C) = v1; + v0 += 1; + *(u16 *)((s8 *)s1 + 0x2) = v0; +} + INCLUDE_ASM("asm/ov_SC03_125/nonmatchings/ov_SC03_125_jr_8017D604", func_8018062C);