mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-26 13:33:34 -04:00
feat(decomp): parallel gate — 2 fns across 2 binaries (11 workers)
ov_SC03_007 func_8018611C ov_SC01_009 func_80182438
This commit is contained in:
@@ -3910,7 +3910,19 @@ void func_801823D0(s32 a0) {
|
||||
}
|
||||
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009_jr_8018057C", func_80182438);
|
||||
void func_80182438(void *a0) {
|
||||
extern s32 func_8017F2A0(void *a0);
|
||||
extern void func_801439C0(u8 *a0);
|
||||
extern void func_8012C218(void *a0);
|
||||
u8 *p;
|
||||
if ((func_8017F2A0(a0) << 16) != 0)
|
||||
return;
|
||||
p = *(u8 **)((u8 *)a0 + 0xD8);
|
||||
if (p != 0)
|
||||
func_801439C0(p);
|
||||
func_8012C218(a0);
|
||||
}
|
||||
|
||||
|
||||
extern void func_8012A828(s32 a0, void *a1);
|
||||
extern void *D_801ED72C[];
|
||||
|
||||
@@ -5069,7 +5069,41 @@ void func_80186074(void *a0) {
|
||||
}
|
||||
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_007/nonmatchings/ov_SC03_007_jr_80183894", func_8018611C);
|
||||
void func_8018611C(void *a0) {
|
||||
s32 sp10[3];
|
||||
extern s32 func_8012CBCC(s32 a0);
|
||||
extern void func_8012B200(u8 *a0);
|
||||
extern void func_8012A828(s32 a0, void *a1);
|
||||
extern void func_80185D3C(void *a0, s32 a1);
|
||||
extern void func_80185E3C(void *a0);
|
||||
extern void (*D_8018C678[])(void);
|
||||
s32 t;
|
||||
s32 st;
|
||||
|
||||
if (func_8012CBCC((s32)a0) & 0x2000) {
|
||||
func_80146A6C(2, a0, 0, 0, 0, 3, 0x30000000);
|
||||
t = *(s32 *)((s32)a0 + 0x1C) + 1;
|
||||
*(s32 *)((s32)a0 + 0x1C) = t;
|
||||
if (t == 1) {
|
||||
sp10[0] = 0;
|
||||
sp10[1] = 0xFFFD0000;
|
||||
sp10[2] = 0x20000;
|
||||
func_8012B14C((s32)a0, sp10);
|
||||
return;
|
||||
}
|
||||
func_8012B200((u8 *)a0);
|
||||
func_8012A828((s32)a0, (void *)&D_8018C678);
|
||||
st = *(u16 *)((s32)a0 + 2);
|
||||
st = st + 1;
|
||||
*(u16 *)((s32)a0 + 0xF6) = *(u16 *)((s32)a0 + 0x76) - 8;
|
||||
*(u16 *)((s32)a0 + 0x98) = 0;
|
||||
*(u16 *)((s32)a0 + 2) = st;
|
||||
*(s32 *)((s32)a0 + 0x1C) = 0x50;
|
||||
}
|
||||
func_80185D3C(a0, 0);
|
||||
func_80185E3C(a0);
|
||||
}
|
||||
|
||||
|
||||
#include "common.h"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user