From da135fb0061c74330c971e4bd072b5cc43da15bf Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Sat, 15 Aug 2026 00:23:08 -0600 Subject: [PATCH] feat(phase-31): propagate func_80181648 (gate lane) --- config/dedup.us.yaml | 7 +++++ src/ov_SC04_018/ov_SC04_018_jr_8017AE2C.c | 18 +----------- src/ov_SC04_019/ov_SC04_019_jr_8017AE2C.c | 2 +- src/shared/engine_core.h | 34 +++++++++++++++++++++++ 4 files changed, 43 insertions(+), 18 deletions(-) diff --git a/config/dedup.us.yaml b/config/dedup.us.yaml index e02b1c7f95..a80bc6c7ab 100644 --- a/config/dedup.us.yaml +++ b/config/dedup.us.yaml @@ -14782,3 +14782,10 @@ groups: func: DEFINE_func_80183604 vram: 0x80183604 binaries: [ov_SC04_018, ov_SC04_019] + - id: E_func_80181648 + tier: h_exact + hash: de5da31c3577dfb9fb302c095e02dade417fe1ee + source: src/shared/engine_core.h + func: DEFINE_func_80181648 + vram: 0x80181648 + binaries: [ov_SC04_018, ov_SC04_019] 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 9da4ef3022..0c62e200fa 100644 --- a/src/ov_SC04_018/ov_SC04_018_jr_8017AE2C.c +++ b/src/ov_SC04_018/ov_SC04_018_jr_8017AE2C.c @@ -5898,23 +5898,7 @@ INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_8017AE2C", func_801815D #include "common.h" -extern void func_8012E8E0(s32, s32); -extern void func_8012E88C(s32); -extern void func_8012A828(s32*, s32); -extern void func_80184C90(s32); -extern void func_80181998(void); - -void func_80181648(void *a0) { - - extern s32 D_80191B3C; - extern short D_801C0D40; - *(short *)((char *)a0 + 0x2) = 3; - func_8012E8E0((s32)a0, (s32)&D_80191B3C); - func_8012E88C((s32)a0); - ((void (*)(s32 *, s32))func_8012A828)((s32 *)a0, (s32)&D_801C0D40); - func_80184C90((s32)a0); - func_80181998(); -} +DEFINE_func_80181648() /* dedup: shared engine-core @0x80181648 (src/shared) */ INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_8017AE2C", func_801816A8); diff --git a/src/ov_SC04_019/ov_SC04_019_jr_8017AE2C.c b/src/ov_SC04_019/ov_SC04_019_jr_8017AE2C.c index c5bbfdf4ca..fc6f3215d6 100644 --- a/src/ov_SC04_019/ov_SC04_019_jr_8017AE2C.c +++ b/src/ov_SC04_019/ov_SC04_019_jr_8017AE2C.c @@ -5842,7 +5842,7 @@ s32 func_80181564(void *a0) INCLUDE_ASM("asm/ov_SC04_019/nonmatchings/ov_SC04_019_jr_8017AE2C", func_801815DC); -INCLUDE_ASM("asm/ov_SC04_019/nonmatchings/ov_SC04_019_jr_8017AE2C", func_80181648); +DEFINE_func_80181648() /* dedup: shared engine-core @0x80181648 (src/shared) */ INCLUDE_ASM("asm/ov_SC04_019/nonmatchings/ov_SC04_019_jr_8017AE2C", func_801816A8); diff --git a/src/shared/engine_core.h b/src/shared/engine_core.h index 411b9974d9..49b0afb851 100644 --- a/src/shared/engine_core.h +++ b/src/shared/engine_core.h @@ -60943,6 +60943,23 @@ return (s32)func_80172710; \ } +#define DEFINE_func_80181648() \ + extern void func_8012E8E0(s32, s32); \ + extern void func_8012E88C(s32); \ + extern void func_8012A828(s32*, s32); \ + extern void func_80184C90(s32); \ + extern void func_80181998(void); \ + void func_80181648(void *a0) { \ + extern s32 D_80191B3C; \ + extern short D_801C0D40; \ + *(short *)((char *)a0 + 0x2) = 3; \ + func_8012E8E0((s32)a0, (s32)&D_80191B3C); \ + func_8012E88C((s32)a0); \ + ((void (*)(s32 *, s32))func_8012A828)((s32 *)a0, (s32)&D_801C0D40); \ + func_80184C90((s32)a0); \ + func_80181998(); \ + } + #endif #define DEFINE_func_80128EA8() \ @@ -151291,4 +151308,21 @@ return (s32)func_80172710; \ } +#define DEFINE_func_80181648() \ + extern void func_8012E8E0(s32, s32); \ + extern void func_8012E88C(s32); \ + extern void func_8012A828(s32*, s32); \ + extern void func_80184C90(s32); \ + extern void func_80181998(void); \ + void func_80181648(void *a0) { \ + extern s32 D_80191B3C; \ + extern short D_801C0D40; \ + *(short *)((char *)a0 + 0x2) = 3; \ + func_8012E8E0((s32)a0, (s32)&D_80191B3C); \ + func_8012E88C((s32)a0); \ + ((void (*)(s32 *, s32))func_8012A828)((s32 *)a0, (s32)&D_801C0D40); \ + func_80184C90((s32)a0); \ + func_80181998(); \ + } + #endif