mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-30 15:36:55 -04:00
feat(decomp): jtbl lane — func_801F218C banked in md_SC03_076 (88 ins, covered)
carve→draft→bank through harvest_verify's gate-time jtbl prep (island split §260); whole-binary SHA green.
This commit is contained in:
@@ -80,7 +80,67 @@ extern void func_8012F14C(s32 a0, s32 a1, s32 a2);
|
||||
/* ==== end §8b carried decl layer ==== */
|
||||
|
||||
|
||||
INCLUDE_ASM("asm/md_SC03_076/nonmatchings/md_SC03_076_jr_801F218C", func_801F218C);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern s32 D_80126B10;
|
||||
extern u8 D_801F35C4[];
|
||||
extern u8 D_801F3630[];
|
||||
extern u8 D_801F3648[];
|
||||
extern s32 func_801789AC(u8 *a0);
|
||||
extern void func_80178CBC(u8 *a0, u8 *a1);
|
||||
extern s16 func_80188F10(void);
|
||||
extern void func_80188F20(s32 a0);
|
||||
extern void func_80174438(s32 a0);
|
||||
extern void func_801EF6E4(void);
|
||||
extern s16 func_801EF70C(void);
|
||||
|
||||
void func_801F218C(u8 *a0) {
|
||||
switch (*(u16 *)(a0 + 0x34)) {
|
||||
case 0:
|
||||
switch (func_801789AC(a0)) {
|
||||
case 2:
|
||||
func_80178CBC(a0, D_801F3630);
|
||||
*(u16 *)(a0 + 0x34) = 0;
|
||||
break;
|
||||
case 1:
|
||||
*(u16 *)(a0 + 0x34) = 2;
|
||||
func_80188F20(4);
|
||||
break;
|
||||
case 3:
|
||||
func_80178CBC(a0, D_801F3648);
|
||||
*(u16 *)(a0 + 0x34) = 3;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
break;
|
||||
case 2:
|
||||
if (func_80188F10() != 0) {
|
||||
func_801EF6E4();
|
||||
*(u16 *)(a0 + 0x34) = 4;
|
||||
} else {
|
||||
func_80178CBC(a0, D_801F35C4);
|
||||
*(u16 *)(a0 + 0x34) = 0;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (func_801789AC(a0) != 0) {
|
||||
func_80174438(D_80126B10);
|
||||
*(u16 *)(a0 + 0x34) = 1;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (func_801EF70C() != 0) {
|
||||
*(u16 *)(a0 + 0x34) = 2;
|
||||
func_80188F20(4);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user