mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-10-06 17:11:04 -04:00
feat(phase-30 S48-T6): propagate func_80188A80 to its zero-crack siblings
This commit is contained in:
@@ -7156,7 +7156,63 @@ INCLUDE_ASM("asm/ov_SC02_011/nonmatchings/ov_SC02_011_jr_8017AE2C", func_80185E2
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC02_011/nonmatchings/ov_SC02_011_jr_8017AE2C", func_80185FA0);
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC02_011/nonmatchings/ov_SC02_011_jr_8017AE2C", func_80186070);
|
||||
|
||||
extern void func_8001CA1C(s32 a0, s32 a1);
|
||||
extern s32 func_80143970(s32 a0);
|
||||
extern void func_8012AD44(s32 *a0, s16 a1);
|
||||
extern void func_8018FE20(s32 a0);
|
||||
extern void func_80186734(void *a0);
|
||||
extern void func_8018ADE4(void);
|
||||
extern void func_8018AE08(s32 a0);
|
||||
extern void func_8002D4C8(s32 a0, s32 a1);
|
||||
|
||||
void func_80186070(s32 a0) {
|
||||
|
||||
extern u8 D_801959C8[];
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = a0; /* $s1 */
|
||||
s32 t0;
|
||||
s32 t1;
|
||||
s32 t2;
|
||||
|
||||
obj = *(s32 *)(self + 0x20);
|
||||
func_8001CA1C(obj, (s32)D_801959C8);
|
||||
|
||||
*(u16 *)(self + 0xA) = *(u16 *)(self + 0xA) - 0xA0;
|
||||
*(u16 *)(self + 0xE) = *(u16 *)(self + 0xE) - 0x10;
|
||||
*(u16 *)(obj + 0x18) = 0x2C00;
|
||||
*(u16 *)(obj + 0x1A) = 0x1C00;
|
||||
*(u32 *)(obj + 4) = *(u32 *)(obj + 4) | 0x1000000;
|
||||
|
||||
t0 = *(s32 *)(self + 0xCC);
|
||||
*(u16 *)(t0) = 0;
|
||||
*(s32 *)(self + 0xCC) = func_80143970(self);
|
||||
|
||||
*(s32 *)(self + 0x14) = 0xFFF80000;
|
||||
*(u16 *)(self + 0x5C) = 0;
|
||||
*(s32 *)(self + 0x1C) = 8;
|
||||
func_8012AD44((s32 *)self, 3);
|
||||
|
||||
obj = *(s32 *)(self + 0x64);
|
||||
t1 = *(s32 *)(obj + 0x20);
|
||||
*(u32 *)(t1 + 4) = *(u32 *)(t1 + 4) | 0x80000000;
|
||||
func_8018FE20(obj);
|
||||
|
||||
*(u16 *)(obj + 0x5C) = 0;
|
||||
func_8012AD44((s32 *)obj, 4);
|
||||
|
||||
t2 = *(s32 *)(self + 0xD0);
|
||||
if (t2 != 0) {
|
||||
*(u16 *)(t2 + 0x2C) = 0;
|
||||
func_80186734((void *)t2);
|
||||
}
|
||||
|
||||
func_8018ADE4();
|
||||
func_8018AE08(self + 4);
|
||||
|
||||
func_8002D4C8(0x5ED, 0);
|
||||
}
|
||||
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC02_011/nonmatchings/ov_SC02_011_jr_8017AE2C", func_80186184);
|
||||
|
||||
|
||||
@@ -3323,7 +3323,63 @@ INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_801848E4", func_8018882
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_801848E4", func_801889B4);
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_801848E4", func_80188A80);
|
||||
|
||||
extern void func_8001CA1C(s32 a0, s32 a1);
|
||||
extern s32 func_80143970(s32 a0);
|
||||
extern void func_8012AD44(s32 *a0, s16 a1);
|
||||
extern void func_8018A31C(s32 a0);
|
||||
extern void func_80189104(void *a0);
|
||||
extern void func_8018AD5C(void);
|
||||
extern void func_8018AD80(s32 a0);
|
||||
extern void func_8002D4C8(s32 a0, s32 a1);
|
||||
|
||||
void func_80188A80(s32 a0) {
|
||||
|
||||
extern u8 D_80191928[];
|
||||
register s32 obj __asm__("$16"); /* $s0 */
|
||||
register s32 self __asm__("$17") = a0; /* $s1 */
|
||||
s32 t0;
|
||||
s32 t1;
|
||||
s32 t2;
|
||||
|
||||
obj = *(s32 *)(self + 0x20);
|
||||
func_8001CA1C(obj, (s32)D_80191928);
|
||||
|
||||
*(u16 *)(self + 0xA) = *(u16 *)(self + 0xA) - 0xA0;
|
||||
*(u16 *)(self + 0xE) = *(u16 *)(self + 0xE) - 0x10;
|
||||
*(u16 *)(obj + 0x18) = 0x2C00;
|
||||
*(u16 *)(obj + 0x1A) = 0x1C00;
|
||||
*(u32 *)(obj + 4) = *(u32 *)(obj + 4) | 0x1000000;
|
||||
|
||||
t0 = *(s32 *)(self + 0xCC);
|
||||
*(u16 *)(t0) = 0;
|
||||
*(s32 *)(self + 0xCC) = func_80143970(self);
|
||||
|
||||
*(s32 *)(self + 0x14) = 0xFFF80000;
|
||||
*(u16 *)(self + 0x5C) = 0;
|
||||
*(s32 *)(self + 0x1C) = 8;
|
||||
func_8012AD44((s32 *)self, 3);
|
||||
|
||||
obj = *(s32 *)(self + 0x64);
|
||||
t1 = *(s32 *)(obj + 0x20);
|
||||
*(u32 *)(t1 + 4) = *(u32 *)(t1 + 4) | 0x80000000;
|
||||
func_8018A31C(obj);
|
||||
|
||||
*(u16 *)(obj + 0x5C) = 0;
|
||||
func_8012AD44((s32 *)obj, 2);
|
||||
|
||||
t2 = *(s32 *)(self + 0xD0);
|
||||
if (t2 != 0) {
|
||||
*(u16 *)(t2 + 0x2C) = 0;
|
||||
func_80189104((void *)t2);
|
||||
}
|
||||
|
||||
func_8018AD5C();
|
||||
func_8018AD80(self + 4);
|
||||
|
||||
func_8002D4C8(0x87B, 0);
|
||||
}
|
||||
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_801848E4", func_80188B94);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user