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

This commit is contained in:
Drew T
2026-08-14 23:36:34 -06:00
parent c4308d5516
commit 79554d3b83
4 changed files with 53 additions and 25 deletions
+7
View File
@@ -14684,3 +14684,10 @@ groups:
func: DEFINE_func_8018BA18
vram: 0x8018BA18
binaries: [ov_SC04_018, ov_SC04_019]
- id: E_func_8018B7FC
tier: h_exact
hash: 0297d8806ce230a7c840359aa6c826f2588b404d
source: src/shared/engine_core.h
func: DEFINE_func_8018B7FC
vram: 0x8018B7FC
binaries: [ov_SC04_018, ov_SC04_019]
+1 -24
View File
@@ -4638,30 +4638,7 @@ INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_80188E1C", func_8018B79
#include "common.h"
extern s32 func_8012E57C(s32 a0, s32 a1);
extern s32 func_80184BAC(s32 arg0, s32 arg1);
extern u8 D_80078EBA;
void func_8018B7FC(void *a0) {
s32 v0;
v0 = func_8012E57C(0x61, 0x8);
*(s32 *)((char *)a0 + 0xCC) = v0;
if (D_80078EBA == 3) {
v0 = 0;
} else {
v0 = func_80184BAC(0x7, 0x13);
v0 = (0U < (u32)v0) ? 1 : 0;
}
if (v0 != 0) {
v0 = 1;
} else {
v0 = 2;
}
*(s16 *)((char *)a0 + 0x2) = v0;
}
DEFINE_func_8018B7FC() /* dedup: shared engine-core @0x8018B7FC (src/shared) */
DEFINE_func_8018B868() /* dedup: shared engine-core @0x8018B868 (src/shared) */
+1 -1
View File
@@ -4039,7 +4039,7 @@ INCLUDE_ASM("asm/ov_SC04_019/nonmatchings/ov_SC04_019_jr_80188E1C", func_8018B73
INCLUDE_ASM("asm/ov_SC04_019/nonmatchings/ov_SC04_019_jr_80188E1C", func_8018B798);
INCLUDE_ASM("asm/ov_SC04_019/nonmatchings/ov_SC04_019_jr_80188E1C", func_8018B7FC);
DEFINE_func_8018B7FC() /* dedup: shared engine-core @0x8018B7FC (src/shared) */
DEFINE_func_8018B868() /* dedup: shared engine-core @0x8018B868 (src/shared) */
+44
View File
@@ -60714,6 +60714,28 @@
} \
}
#define DEFINE_func_8018B7FC() \
extern s32 func_8012E57C(s32 a0, s32 a1); \
extern s32 func_80184BAC(s32 arg0, s32 arg1); \
extern u8 D_80078EBA; \
void func_8018B7FC(void *a0) { \
s32 v0; \
v0 = func_8012E57C(0x61, 0x8); \
*(s32 *)((char *)a0 + 0xCC) = v0; \
if (D_80078EBA == 3) { \
v0 = 0; \
} else { \
v0 = func_80184BAC(0x7, 0x13); \
v0 = (0U < (u32)v0) ? 1 : 0; \
} \
if (v0 != 0) { \
v0 = 1; \
} else { \
v0 = 2; \
} \
*(s16 *)((char *)a0 + 0x2) = v0; \
}
#endif
#define DEFINE_func_80128EA8() \
@@ -150833,4 +150855,26 @@
} \
}
#define DEFINE_func_8018B7FC() \
extern s32 func_8012E57C(s32 a0, s32 a1); \
extern s32 func_80184BAC(s32 arg0, s32 arg1); \
extern u8 D_80078EBA; \
void func_8018B7FC(void *a0) { \
s32 v0; \
v0 = func_8012E57C(0x61, 0x8); \
*(s32 *)((char *)a0 + 0xCC) = v0; \
if (D_80078EBA == 3) { \
v0 = 0; \
} else { \
v0 = func_80184BAC(0x7, 0x13); \
v0 = (0U < (u32)v0) ? 1 : 0; \
} \
if (v0 != 0) { \
v0 = 1; \
} else { \
v0 = 2; \
} \
*(s16 *)((char *)a0 + 0x2) = v0; \
}
#endif