feat(phase-23): lora-grind gate — +17 fns x0 propagated (fleet 63.73%)

This commit is contained in:
Drew T
2026-06-30 05:18:19 -06:00
parent 9623afd3fa
commit 238a1c00d8
5 changed files with 298 additions and 120 deletions
+105
View File
@@ -11566,3 +11566,108 @@ groups:
func: DEFINE_func_801705C0
vram: 0x801705C0
binaries: [ov_SC01_077, ov_SC01_005, ov_SC01_006, ov_SC03_001, ov_SC01_000, ov_SC01_001, ov_SC02_000, ov_SC02_003, ov_SC03_002, ov_SC03_006, ov_SC04_000, ov_SC04_018, ov_SC04_019, ov_SC05_000, ov_SC06_000, ov_SC07_000, ov_SC01_004, ov_SC01_008, ov_SC01_009, ov_SC01_074, ov_SC01_080, ov_SC01_084, ov_SC02_004, ov_SC02_005, ov_SC02_011, ov_SC02_015, ov_SC02_016, ov_SC02_017, ov_SC02_021, ov_SC02_026, ov_SC02_027, ov_SC02_028, ov_SC02_031, ov_SC02_035, ov_SC02_039, ov_SC02_041, ov_SC03_003, ov_SC03_007, ov_SC03_010, ov_SC03_011, ov_SC03_012, ov_SC03_013, ov_SC03_014, ov_SC03_015, ov_SC03_023, ov_SC03_024, ov_SC03_028, ov_SC03_029, ov_SC03_030, ov_SC03_031, ov_SC03_089, ov_SC03_090, ov_SC03_091, ov_SC03_092, ov_SC03_093, ov_SC03_094, ov_SC03_095, ov_SC03_096, ov_SC03_097, ov_SC03_098, ov_SC03_099, ov_SC03_100, ov_SC03_101, ov_SC03_102, ov_SC03_103, ov_SC03_104, ov_SC03_105, ov_SC03_108, ov_SC03_109, ov_SC03_110, ov_SC03_111, ov_SC03_112, ov_SC03_113, ov_SC03_114, ov_SC03_115, ov_SC03_116, ov_SC03_117, ov_SC03_118, ov_SC03_119, ov_SC03_121, ov_SC03_124, ov_SC03_125, ov_SC03_126, ov_SC04_002, ov_SC04_003, ov_SC04_004, ov_SC04_005, ov_SC04_006, ov_SC04_007, ov_SC04_008, ov_SC04_009, ov_SC04_010, ov_SC04_011, ov_SC04_012, ov_SC04_015, ov_SC04_016, ov_SC04_020, ov_SC04_021, ov_SC05_001, ov_SC05_002, ov_SC05_003, ov_SC05_004, ov_SC05_005, ov_SC05_006, ov_SC05_007, ov_SC05_008, ov_SC05_009, ov_SC05_010, ov_SC05_011, ov_SC05_017, ov_SC05_018, ov_SC05_019, ov_SC06_006, ov_SC06_008, ov_SC06_010, ov_SC06_011, ov_SC06_013, ov_SC06_014, ov_SC06_015, ov_SC06_016, ov_SC06_018, ov_SC06_020, ov_SC06_022, ov_SC06_024, ov_SC06_025, ov_SC06_027, ov_SC06_029, ov_SC06_030, ov_SC06_032, ov_SC06_033, ov_SC07_001, ov_SC07_002, ov_SC07_008, ov_SC07_009]
- id: E_func_8017C048
tier: h_exact
hash: 7678540574197b420f17571673856a74783eb9d5
source: src/shared/engine_core.h
func: DEFINE_func_8017C048
vram: 0x8017C048
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_8017C120
tier: h_exact
hash: 7678540574197b420f17571673856a74783eb9d5
source: src/shared/engine_core.h
func: DEFINE_func_8017C120
vram: 0x8017C120
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_8017C238
tier: h_exact
hash: 7678540574197b420f17571673856a74783eb9d5
source: src/shared/engine_core.h
func: DEFINE_func_8017C238
vram: 0x8017C238
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_8017C338
tier: h_exact
hash: 7678540574197b420f17571673856a74783eb9d5
source: src/shared/engine_core.h
func: DEFINE_func_8017C338
vram: 0x8017C338
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_8017D5CC
tier: h_exact
hash: 98ab17e54d84a098b4240053ee845921141318c1
source: src/shared/engine_core.h
func: DEFINE_func_8017D5CC
vram: 0x8017D5CC
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_801805A0
tier: h_exact
hash: 7678540574197b420f17571673856a74783eb9d5
source: src/shared/engine_core.h
func: DEFINE_func_801805A0
vram: 0x801805A0
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_80180800
tier: h_exact
hash: 7678540574197b420f17571673856a74783eb9d5
source: src/shared/engine_core.h
func: DEFINE_func_80180800
vram: 0x80180800
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_80180A30
tier: h_exact
hash: 7678540574197b420f17571673856a74783eb9d5
source: src/shared/engine_core.h
func: DEFINE_func_80180A30
vram: 0x80180A30
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_80180B04
tier: h_exact
hash: ff05b638ac9285b645b5d94acaa93758b0a74522
source: src/shared/engine_core.h
func: DEFINE_func_80180B04
vram: 0x80180B04
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_80180B14
tier: h_exact
hash: 7ab3d5f0fa1e371ba75d36ad750c2f104631f74f
source: src/shared/engine_core.h
func: DEFINE_func_80180B14
vram: 0x80180B14
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_8017DA84
tier: h_exact
hash: 7438ad3e28f77ccdf7e83344574fea72f20d7a25
source: src/shared/engine_core.h
func: DEFINE_func_8017DA84
vram: 0x8017DA84
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_801807E8
tier: h_exact
hash: e97c73bdd79ef1f387cd9921f4cdf7198c7b27f7
source: src/shared/engine_core.h
func: DEFINE_func_801807E8
vram: 0x801807E8
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_8017D464
tier: h_exact
hash: 4e0fdb97b17b9682dd08f6f4007a9aeb5b675fd0
source: src/shared/engine_core.h
func: DEFINE_func_8017D464
vram: 0x8017D464
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_8017E0EC
tier: h_exact
hash: a05128332cc0f0c85bd55a47c941329275cd82fc
source: src/shared/engine_core.h
func: DEFINE_func_8017E0EC
vram: 0x8017E0EC
binaries: [ov_SC01_005, ov_SC01_006]
- id: E_func_8017D7E0
tier: h_exact
hash: ee6ee2e0d5fcaee039768c44b39e34abb5f9db9f
source: src/shared/engine_core.h
func: DEFINE_func_8017D7E0
vram: 0x8017D7E0
binaries: [ov_SC01_005, ov_SC01_006]
+15 -49
View File
@@ -4765,8 +4765,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017BF70);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017BFEC);
void func_8017C048(void) {
}
DEFINE_func_8017C048() /* dedup: shared engine-core @0x8017C048 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C050);
@@ -4774,8 +4773,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C078);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C0B4);
void func_8017C120(void) {
}
DEFINE_func_8017C120() /* dedup: shared engine-core @0x8017C120 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C128);
@@ -4785,8 +4783,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C18C);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C1E8);
void func_8017C238(void) {
}
DEFINE_func_8017C238() /* dedup: shared engine-core @0x8017C238 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C240);
@@ -4796,8 +4793,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C2A4);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C2F4);
void func_8017C338(void) {
}
DEFINE_func_8017C338() /* dedup: shared engine-core @0x8017C338 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017C340);
@@ -4828,11 +4824,7 @@ extern void func_800D1EBC(void);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D428);
s32 func_8017D464(u8 *a0) {
*(s32 *)(a0 + 0x28) = 0xA;
*(u8 *)(a0 + 0x15) += 1;
return 0;
}
DEFINE_func_8017D464() /* dedup: shared engine-core @0x8017D464 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D480);
@@ -4848,9 +4840,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D51C);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D558);
s32 func_8017D5CC(void) {
return 0x1;
}
DEFINE_func_8017D5CC() /* dedup: shared engine-core @0x8017D5CC (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D5D4);
@@ -4863,7 +4853,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D6E4);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D7A4);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D7E0);
DEFINE_func_8017D7E0() /* dedup: shared engine-core @0x8017D7E0 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D808);
@@ -4871,12 +4861,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D9A0);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017D9F4);
s32 func_8017DA84(s32 arg0) {
if (arg0 < 5) {
return 0x57;
}
return 0x3D;
}
DEFINE_func_8017DA84() /* dedup: shared engine-core @0x8017DA84 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017DA9C);
@@ -4893,14 +4878,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017DC48);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017DEFC);
extern u16 D_80115112;
void func_8017E0EC(void) {
register s32 *p __asm__("$3"); /* pinned to $v1 */
register s32 v __asm__("$2"); /* pinned to $v0 */
p = &D_80115112;
v = *(u16 *)p + 1;
*(u16 *)p = v;
}
DEFINE_func_8017E0EC() /* dedup: shared engine-core @0x8017E0EC (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8017E108);
@@ -4951,8 +4929,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8018048C);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_80180564);
void func_801805A0(void) {
}
DEFINE_func_801805A0() /* dedup: shared engine-core @0x801805A0 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_801805A8);
@@ -4979,16 +4956,10 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_8018078C);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_801807D8);
void func_801807E8(void *a0) {
*(s16 *)((s32)a0 + 0x10A) = 0x60;
*(s16 *)((s32)a0 + 0x106) = 0;
*(s16 *)((s32)a0 + 0x108) = 0;
*(s16 *)((s32)a0 + 0xFE) = 0;
}
DEFINE_func_801807E8() /* dedup: shared engine-core @0x801807E8 (src/shared) */
void func_80180800(void) {
}
DEFINE_func_80180800() /* dedup: shared engine-core @0x80180800 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_80180808);
@@ -4998,8 +4969,7 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_80180974);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_801809F4);
void func_80180A30(void) {
}
DEFINE_func_80180A30() /* dedup: shared engine-core @0x80180A30 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_80180A38);
@@ -5007,14 +4977,10 @@ INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_80180AD0);
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_80180AE8);
void func_80180B04(void *a0) {
*(short *)(*(int *)((char *)a0 + 0xcc) + 0xfc) = 1;
}
DEFINE_func_80180B04() /* dedup: shared engine-core @0x80180B04 (src/shared) */
void func_80180B14(void *a0) {
*(short *)(*(int *)((char *)a0 + 0xcc) + 0xfc) = 0x2;
}
DEFINE_func_80180B14() /* dedup: shared engine-core @0x80180B14 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005", func_80180B24);
+15 -54
View File
@@ -4764,8 +4764,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017BF70);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017BFEC);
void func_8017C048(void) {
}
DEFINE_func_8017C048() /* dedup: shared engine-core @0x8017C048 (src/shared) */
extern void func_80174684(void *);
extern s32 func_8017C078;
@@ -4778,8 +4777,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017C078);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017C0B4);
void func_8017C120(void) {
}
DEFINE_func_8017C120() /* dedup: shared engine-core @0x8017C120 (src/shared) */
extern void func_80174684(void *);
extern s32 func_8017C150;
@@ -4794,8 +4792,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017C18C);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017C1E8);
void func_8017C238(void) {
}
DEFINE_func_8017C238() /* dedup: shared engine-core @0x8017C238 (src/shared) */
extern void func_80174684(void *);
extern s32 func_8017C268(s32);
@@ -4810,8 +4807,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017C2A4);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017C2F4);
void func_8017C338(void) {
}
DEFINE_func_8017C338() /* dedup: shared engine-core @0x8017C338 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017C340);
@@ -4837,11 +4833,7 @@ extern s32 func_800D1EBC(void);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D428);
s32 func_8017D464(u8 *a0) {
*(s32 *)(a0 + 0x28) = 0xA;
*(u8 *)(a0 + 0x15) += 1;
return 0;
}
DEFINE_func_8017D464() /* dedup: shared engine-core @0x8017D464 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D480);
@@ -4856,9 +4848,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D51C);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D558);
s32 func_8017D5CC(void) {
return 0x1;
}
DEFINE_func_8017D5CC() /* dedup: shared engine-core @0x8017D5CC (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D5D4);
@@ -4871,12 +4861,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D6E4);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D7A4);
extern void func_8017D808(s32 arg0, s32 arg1);
extern s32 D_801274E8;
void func_8017D7E0(s32 arg0) {
func_8017D808(arg0, &D_801274E8);
}
DEFINE_func_8017D7E0() /* dedup: shared engine-core @0x8017D7E0 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D808);
@@ -4885,12 +4870,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D9A0);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017D9F4);
s32 func_8017DA84(s32 arg0) {
if (arg0 < 5) {
return 0x57;
}
return 0x3D;
}
DEFINE_func_8017DA84() /* dedup: shared engine-core @0x8017DA84 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017DA9C);
@@ -4907,14 +4887,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017DC48);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017DEFC);
extern u16 D_80115112;
void func_8017E0EC(void) {
register s32 *p __asm__("$3"); /* pinned to $v1 */
register s32 v __asm__("$2"); /* pinned to $v0 */
p = &D_80115112;
v = *(u16 *)p + 1;
*(u16 *)p = v;
}
DEFINE_func_8017E0EC() /* dedup: shared engine-core @0x8017E0EC (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8017E108);
@@ -4965,8 +4938,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8018048C);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_80180564);
void func_801805A0(void) {
}
DEFINE_func_801805A0() /* dedup: shared engine-core @0x801805A0 (src/shared) */
extern void func_8017DAAC(s32 arg0, s32 arg1);
void func_801805A8(void) {
@@ -5000,16 +4972,10 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_8018078C);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_801807D8);
void func_801807E8(void *a0) {
*(s16 *)((s32)a0 + 0x10A) = 0x60;
*(s16 *)((s32)a0 + 0x106) = 0;
*(s16 *)((s32)a0 + 0x108) = 0;
*(s16 *)((s32)a0 + 0xFE) = 0;
}
DEFINE_func_801807E8() /* dedup: shared engine-core @0x801807E8 (src/shared) */
void func_80180800(void) {
}
DEFINE_func_80180800() /* dedup: shared engine-core @0x80180800 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_80180808);
@@ -5019,8 +4985,7 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_80180974);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_801809F4);
void func_80180A30(void) {
}
DEFINE_func_80180A30() /* dedup: shared engine-core @0x80180A30 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_80180A38);
@@ -5028,14 +4993,10 @@ INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_80180AD0);
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_80180AE8);
void func_80180B04(void *a0) {
*(short *)(*(int *)((char *)a0 + 0xcc) + 0xfc) = 1;
}
DEFINE_func_80180B04() /* dedup: shared engine-core @0x80180B04 (src/shared) */
void func_80180B14(void *a0) {
*(short *)(*(int *)((char *)a0 + 0xcc) + 0xfc) = 0x2;
}
DEFINE_func_80180B14() /* dedup: shared engine-core @0x80180B14 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006", func_80180B24);
+80 -17
View File
@@ -189,7 +189,10 @@ DEFINE_func_8012AD44() /* dedup: shared engine-core @0x8012AD44 (src/shared) */
DEFINE_func_8012AD50() /* dedup: shared engine-core @0x8012AD50 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8012AD64);
void func_8012AD64(s32 *a0, s16 a1) {
*(s16 *)((s32)a0 + 0x34) = a1;
}
DEFINE_func_8012AD6C() /* dedup: shared engine-core @0x8012AD6C (src/shared) */
@@ -265,7 +268,10 @@ DEFINE_func_8012BEE8() /* dedup: shared engine-core @0x8012BEE8 (src/shared) */
DEFINE_func_8012BF10() /* dedup: shared engine-core @0x8012BF10 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8012BF4C);
void func_8012BF4C(s32 *a0, s32 a1) {
*(s32 *)((s32)a0 + 0x1C) = a1;
}
DEFINE_func_8012BF54() /* dedup: shared engine-core @0x8012BF54 (src/shared) */
@@ -379,7 +385,10 @@ INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8012E014);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8012E138);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8012E27C);
s32 func_8012E27C(void) {
return 0x1;
}
DEFINE_func_8012E284() /* dedup: shared engine-core @0x8012E284 (src/shared) */
@@ -749,7 +758,15 @@ DEFINE_func_80138B88() /* dedup: shared engine-core @0x80138B88 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80138BE0);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80138C30);
void func_80138C30(void *a0) {
s16 v1 = *(s16 *)((u8 *)a0 + 4);
if (v1 == 4) {
*(s16 *)((u8 *)a0 + 4) = 2;
} else {
*(s32 *)((u8 *)a0 + 8) |= 0x800;
}
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80138C60);
@@ -4413,7 +4430,14 @@ DEFINE_func_80174604() /* dedup: shared engine-core @0x80174604 (src/shared) */
DEFINE_func_80174630() /* dedup: shared engine-core @0x80174630 (src/shared) */
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80174650);
extern s32 D_801270BC;
extern s32 D_801150F8;
s32 func_80174650(s32 _arg0)
{
D_801270BC = D_801270BC | 1;
D_801150F8 = 0;
}
DEFINE_func_80174674() /* dedup: shared engine-core @0x80174674 (src/shared) */
@@ -4747,7 +4771,12 @@ INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017CD7C);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017CDB8);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017CDFC);
extern s32 func_800167F0(s32 arg0);
s32 func_8017CDFC(void) {
return (func_800167F0(0) & 0xFFFF) != 0;
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017CE20);
@@ -4833,9 +4862,16 @@ INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F568);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F5B0);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F5F8);
extern s32 func_8017F5F8(void *a0);
s32 func_8017F5F8(void *a0) {
return *(s16 *)((char *)a0 + 0x104) == 0x4;
}
s32 func_8017F60C(s32 *a0) {
return *(s16*)((s32)a0 + 0x104);
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F60C);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F618);
@@ -4843,7 +4879,10 @@ INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F658);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F67C);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F6B4);
void func_8017F6B4(void *a0) {
*(short *)((char *)a0 + 0x2) = 0x5;
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F6C0);
@@ -4861,13 +4900,25 @@ INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F7D8);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F7F0);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F8B4);
void func_8017F8B4(void *a0) {
*(short *)((char *)a0 + 0xFA) = 0x1D00;
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F8C0);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F8CC);
void func_8017F8C0(s32 *a0) {
*(s16 *)((s32)a0 + 0xFA) = 0x1A40;
}
void func_8017F8CC(void *a0) {
*(short *)((char *)a0 + 0xFA) = 0x2000;
}
void func_8017F8D8(s32 *a0) {
*(s16 *)((s32)a0 + 0xFA) = 0xA40;
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F8D8);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8017F8E4);
@@ -4926,13 +4977,25 @@ INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80181724);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80181758);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80181768);
void func_80181768(void *a0) {
*(s16 *)((s32)a0 + 0x106) = 1;
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80181774);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80181780);
void func_80181774(void *a0) {
*(short *)((char *)a0 + 0x106) = 0x2;
}
void func_80181780(void *a0) {
*(short *)((char *)a0 + 0x106) = 0x3;
}
void func_8018178C(void *a0) {
*(s16 *)((s32)a0 + 0x106) = 0;
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_8018178C);
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009", func_80181794);
+83
View File
@@ -23925,4 +23925,87 @@
((void (*)(s32))func_80171928)(a0); \
}
#define DEFINE_func_8017C048() \
void func_8017C048(void) { \
}
#define DEFINE_func_8017C120() \
void func_8017C120(void) { \
}
#define DEFINE_func_8017C238() \
void func_8017C238(void) { \
}
#define DEFINE_func_8017C338() \
void func_8017C338(void) { \
}
#define DEFINE_func_8017D5CC() \
s32 func_8017D5CC(void) { \
return 0x1; \
}
#define DEFINE_func_801805A0() \
void func_801805A0(void) { \
}
#define DEFINE_func_80180800() \
void func_80180800(void) { \
}
#define DEFINE_func_80180A30() \
void func_80180A30(void) { \
}
#define DEFINE_func_80180B04() \
void func_80180B04(void *a0) { \
*(short *)(*(int *)((char *)a0 + 0xcc) + 0xfc) = 1; \
}
#define DEFINE_func_80180B14() \
void func_80180B14(void *a0) { \
*(short *)(*(int *)((char *)a0 + 0xcc) + 0xfc) = 0x2; \
}
#define DEFINE_func_8017DA84() \
s32 func_8017DA84(s32 arg0) { \
if (arg0 < 5) { \
return 0x57; \
} \
return 0x3D; \
}
#define DEFINE_func_801807E8() \
void func_801807E8(void *a0) { \
*(s16 *)((s32)a0 + 0x10A) = 0x60; \
*(s16 *)((s32)a0 + 0x106) = 0; \
*(s16 *)((s32)a0 + 0x108) = 0; \
*(s16 *)((s32)a0 + 0xFE) = 0; \
}
#define DEFINE_func_8017D464() \
s32 func_8017D464(u8 *a0) { \
*(s32 *)(a0 + 0x28) = 0xA; \
*(u8 *)(a0 + 0x15) += 1; \
return 0; \
}
#define DEFINE_func_8017E0EC() \
extern u16 D_80115112; \
void func_8017E0EC(void) { \
register s32 *p __asm__("$3"); /* pinned to $v1 */ \
register s32 v __asm__("$2"); /* pinned to $v0 */ \
p = &D_80115112; \
v = *(u16 *)p + 1; \
*(u16 *)p = v; \
}
#define DEFINE_func_8017D7E0() \
extern void func_8017D808(s32 arg0, s32 arg1); \
extern s32 D_801274E8; \
void func_8017D7E0(s32 arg0) { \
func_8017D808(arg0, &D_801274E8); \
}
#endif