From 37e8ded92f66bcfbbac4c79a7ce040d2f596b302 Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Thu, 13 Aug 2026 17:01:48 -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_091/ov_SC03_091_jr_80182268.c | 35 ++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/src/ov_SC03_091/ov_SC03_091_jr_80182268.c b/src/ov_SC03_091/ov_SC03_091_jr_80182268.c index 1b43f8af7..428ce1b06 100644 --- a/src/ov_SC03_091/ov_SC03_091_jr_80182268.c +++ b/src/ov_SC03_091/ov_SC03_091_jr_80182268.c @@ -2711,7 +2711,40 @@ extern void func_8016EE40(s32 a0, s32 a1, s32 a2); } -INCLUDE_ASM("asm/ov_SC03_091/nonmatchings/ov_SC03_091_jr_80182268", func_80182390); +#include "common.h" + +/* A-prop sibling of the byte-matched seed func_8017D840 (ov_SC01_077, + * src/ov_SC01_077/ov_SC01_077_jr_8017AE2C.c). Same skeleton; the words that + * differ are the per-overlay callback symbol, the eight init constants, and the + * call order of func_8012A094 vs the callback. Symbol surface taken from + * asm/ov_SC03_091/nonmatchings/ov_SC03_091_jr_80182268/func_80182390.s. */ +extern void func_8012A018(s32 a0, s32 a1); +extern void func_8012A094(s32 a0); +extern void func_8018268C(void*); +extern u8 D_80126948[]; +extern s32 D_80126954; +extern s32 D_8012695C; +extern s16 D_80126968; +extern s16 D_8012696A; +extern s16 D_8012696C; +extern s16 D_80126976; +extern s16 D_80126978; +extern s16 D_8012697A; + +void func_80182390(void) { + D_80126954 = 0x1F4; + D_8012695C = 0x4B0; + D_80126968 = 0xE3; + D_8012696A = 0x800; + D_8012696C = 0; + D_80126976 = 0; + D_80126978 = -0x80; + D_8012697A = 0; + func_8012A018(func_8018268C, 0); + func_8012A094(&D_80126948); + ((s32 (*)(void *))func_8018268C)(&D_80126948); +} + extern void func_8012A018(s32 a, s32 b);