mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-27 22:45:39 -04:00
feat(decomp): worker gate — +2 fns x0 propagated (fleet 95.2%)
This commit is contained in:
@@ -3391,7 +3391,7 @@ void func_8017C0C8(void *a0) {
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_024/nonmatchings/ov_SC03_024_jr_8017AE2C", func_8017C104);
|
||||
|
||||
extern void func_8017C154(void);
|
||||
extern void func_8017C154();
|
||||
void func_8017C12C(void) {
|
||||
func_8017C154();
|
||||
}
|
||||
@@ -3399,7 +3399,31 @@ void func_8017C12C(void) {
|
||||
|
||||
DEFINE_func_8017C14C() /* dedup: shared engine-core @0x8017C14C (src/shared) */
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_024/nonmatchings/ov_SC03_024_jr_8017AE2C", func_8017C154);
|
||||
extern SVECTOR_8017C290 D_8018A9D8[4];
|
||||
void func_8017C154(void *a0)
|
||||
{
|
||||
s16 buf20[4];
|
||||
SVECTOR_8017C290 c;
|
||||
SVECTOR_8017C290 d;
|
||||
SVECTOR_8017C290 e;
|
||||
SVECTOR_8017C290 f;
|
||||
s32 i, j;
|
||||
*(s16 *)((u8 *)a0 + 0x10) = *(s32 *)((u8 *)a0 + 0x30);
|
||||
func_80015978((s32)a0 + 4, (s32 *)buf20);
|
||||
for (j = 0; j < 4; j++) {
|
||||
c.vx = 0;
|
||||
c.vy = 0;
|
||||
c.vz = 0;
|
||||
d = c;
|
||||
e = c;
|
||||
for (i = 0; i < 4; i++) {
|
||||
f = D_8018A9D8[i];
|
||||
*(s16 *)((u8 *)a0 + 0x12) = i + j;
|
||||
func_8017C290((int)a0, buf20, &c, &d, &e, &f, (s16 *)((u8 *)a0 + 0x10));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#include "common.h"
|
||||
|
||||
@@ -4402,7 +4426,22 @@ DEFINE_func_8017DD74() /* dedup: shared engine-core @0x8017DD74 (src/shared) */
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_024/nonmatchings/ov_SC03_024_jr_8017AE2C", func_8017DD7C);
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_024/nonmatchings/ov_SC03_024_jr_8017AE2C", func_8017DDBC);
|
||||
extern s32 func_801399F0(s32 a0);
|
||||
extern void func_80139914(s32 a0);
|
||||
extern void func_8017D9C8(s32 a0);
|
||||
extern void func_80171A1C(u8*);
|
||||
extern s16 D_80126B3C;
|
||||
void func_8017DDBC(s32 param_1)
|
||||
{
|
||||
if (func_801399F0(*(s32 *)(param_1 + 0x198)) != 0) {
|
||||
func_80139914(*(s32 *)(param_1 + 0x198));
|
||||
*(s32 *)(param_1 + 0x198) = 0;
|
||||
*(s32 *)(param_1 + 0x200) = 0x60;
|
||||
func_8017D9C8((s32)D_80126B3C);
|
||||
((void (*)(s32))func_80171A1C)(param_1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_024/nonmatchings/ov_SC03_024_jr_8017AE2C", func_8017DE24);
|
||||
|
||||
|
||||
@@ -2665,7 +2665,7 @@ extern void func_8017BFC8(void *a0);
|
||||
extern void func_8017C07C(void);
|
||||
extern void (*D_8018A9C4[])(void);
|
||||
extern void func_8017C0C8(void *a0);
|
||||
extern void func_8017C154(void);
|
||||
extern void func_8017C154();
|
||||
extern void func_8017C12C(void);
|
||||
extern void func_8017C14C(void);
|
||||
extern void (*D_8018AA04[])(void);
|
||||
|
||||
Reference in New Issue
Block a user