feat(phase-31): propagate func_8017DD7C (gate lane)

This commit is contained in:
Drew T
2026-08-14 21:56:49 -06:00
parent acd8025341
commit 3a9c46f283
5 changed files with 56 additions and 72 deletions
+7
View File
@@ -14600,3 +14600,10 @@ groups:
func: DEFINE_func_80185F24
vram: 0x80185F24
binaries: [ov_SC02_000, ov_SC02_003]
- id: E_func_8017DD7C
tier: h_exact
hash: fc81e68ce00bfd54ccd26581d16837d15efef9ac
source: src/shared/engine_core.h
func: DEFINE_func_8017DD7C
vram: 0x8017DD7C
binaries: [ov_SC04_018, ov_SC04_019, ov_SC05_017]
+1 -24
View File
@@ -4510,30 +4510,7 @@ s32 func_8017DCE8(void) {
INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_8017AE2C", func_8017DD0C);
extern void func_800D1E28(void);
extern s32 func_800D1D94(void);
extern void func_8002D4C8(s32 a0, s32 a1);
extern void func_8001BFD0(void);
extern void func_800D0C48(s32 a0);
s32 func_8017DD7C(s32 a0) {
extern s16 D_800B9A0A;
s16 s0;
if (--(*(s32 *)(a0 + 0x28)) == -1) {
func_800D1E28();
s0 = D_800B9A0A;
if (s0 != 0x1000 || (s16)func_800D1D94() != s0) {
func_8002D4C8(0x1C, 0);
func_8001BFD0();
func_8002D4C8(0x1D, 0);
func_800D0C48(1);
}
*(u8 *)(a0 + 0x15) += 1;
}
return 0;
}
DEFINE_func_8017DD7C() /* dedup: shared engine-core @0x8017DD7C (src/shared) */
extern void func_800D1EBC(void);
+1 -24
View File
@@ -4505,30 +4505,7 @@ s32 func_8017DCE8(void) {
INCLUDE_ASM("asm/ov_SC04_019/nonmatchings/ov_SC04_019_jr_8017AE2C", func_8017DD0C);
extern void func_800D1E28(void);
extern s32 func_800D1D94(void);
extern void func_8002D4C8(s32 a0, s32 a1);
extern void func_8001BFD0(void);
extern void func_800D0C48(s32 a0);
s32 func_8017DD7C(s32 a0) {
extern s16 D_800B9A0A;
s16 s0;
if (--(*(s32 *)(a0 + 0x28)) == -1) {
func_800D1E28();
s0 = D_800B9A0A;
if (s0 != 0x1000 || (s16)func_800D1D94() != s0) {
func_8002D4C8(0x1C, 0);
func_8001BFD0();
func_8002D4C8(0x1D, 0);
func_800D0C48(1);
}
*(u8 *)(a0 + 0x15) += 1;
}
return 0;
}
DEFINE_func_8017DD7C() /* dedup: shared engine-core @0x8017DD7C (src/shared) */
extern void func_800D1EBC(void);
+1 -24
View File
@@ -4517,30 +4517,7 @@ s32 func_8017DCE8(void) {
INCLUDE_ASM("asm/ov_SC05_017/nonmatchings/ov_SC05_017_jr_8017AE2C", func_8017DD0C);
extern void func_800D1E28(void);
extern s32 func_800D1D94(void);
extern void func_8002D4C8(s32 a0, s32 a1);
extern void func_8001BFD0(void);
extern void func_800D0C48(s32 a0);
s32 func_8017DD7C(s32 a0) {
extern s16 D_800B9A0A;
s16 s0;
if (--(*(s32 *)(a0 + 0x28)) == -1) {
func_800D1E28();
s0 = D_800B9A0A;
if (s0 != 0x1000 || (s16)func_800D1D94() != s0) {
func_8002D4C8(0x1C, 0);
func_8001BFD0();
func_8002D4C8(0x1D, 0);
func_800D0C48(1);
}
*(u8 *)(a0 + 0x15) += 1;
}
return 0;
}
DEFINE_func_8017DD7C() /* dedup: shared engine-core @0x8017DD7C (src/shared) */
extern void func_800D1EBC(void);
+46
View File
@@ -60501,6 +60501,29 @@
} \
}
#define DEFINE_func_8017DD7C() \
extern void func_800D1E28(void); \
extern s32 func_800D1D94(void); \
extern void func_8002D4C8(s32 a0, s32 a1); \
extern void func_8001BFD0(void); \
extern void func_800D0C48(s32 a0); \
s32 func_8017DD7C(s32 a0) { \
extern s16 D_800B9A0A; \
s16 s0; \
if (--(*(s32 *)(a0 + 0x28)) == -1) { \
func_800D1E28(); \
s0 = D_800B9A0A; \
if (s0 != 0x1000 || (s16)func_800D1D94() != s0) { \
func_8002D4C8(0x1C, 0); \
func_8001BFD0(); \
func_8002D4C8(0x1D, 0); \
func_800D0C48(1); \
} \
*(u8 *)(a0 + 0x15) += 1; \
} \
return 0; \
}
#endif
#define DEFINE_func_80128EA8() \
@@ -150407,4 +150430,27 @@
} \
}
#define DEFINE_func_8017DD7C() \
extern void func_800D1E28(void); \
extern s32 func_800D1D94(void); \
extern void func_8002D4C8(s32 a0, s32 a1); \
extern void func_8001BFD0(void); \
extern void func_800D0C48(s32 a0); \
s32 func_8017DD7C(s32 a0) { \
extern s16 D_800B9A0A; \
s16 s0; \
if (--(*(s32 *)(a0 + 0x28)) == -1) { \
func_800D1E28(); \
s0 = D_800B9A0A; \
if (s0 != 0x1000 || (s16)func_800D1D94() != s0) { \
func_8002D4C8(0x1C, 0); \
func_8001BFD0(); \
func_8002D4C8(0x1D, 0); \
func_800D0C48(1); \
} \
*(u8 *)(a0 + 0x15) += 1; \
} \
return 0; \
}
#endif