Decompile func0f0292bc

This commit is contained in:
Ryan Dwyer 2020-07-27 21:49:04 +10:00
parent ae432ba544
commit 1e864596b5
5 changed files with 39 additions and 36 deletions

View File

@ -11128,39 +11128,16 @@ glabel func0f0291d4
/* f0292b8: 00000000 */ nop
);
GLOBAL_ASM(
glabel func0f0292bc
/* f0292bc: 27bdffd8 */ addiu $sp,$sp,-40
/* f0292c0: afb2001c */ sw $s2,0x1c($sp)
/* f0292c4: afb30020 */ sw $s3,0x20($sp)
/* f0292c8: afb10018 */ sw $s1,0x18($sp)
/* f0292cc: afb00014 */ sw $s0,0x14($sp)
/* f0292d0: 3c128006 */ lui $s2,%hi(var80062a8c)
/* f0292d4: 00808825 */ or $s1,$a0,$zero
/* f0292d8: afbf0024 */ sw $ra,0x24($sp)
/* f0292dc: 26522a8c */ addiu $s2,$s2,%lo(var80062a8c)
/* f0292e0: 00008025 */ or $s0,$zero,$zero
/* f0292e4: 24130730 */ addiu $s3,$zero,0x730
/* f0292e8: 8e420000 */ lw $v0,0x0($s2)
.L0f0292ec:
/* f0292ec: 00507021 */ addu $t6,$v0,$s0
/* f0292f0: 8dcf0000 */ lw $t7,0x0($t6)
/* f0292f4: 562f0004 */ bnel $s1,$t7,.L0f029308
/* f0292f8: 2610005c */ addiu $s0,$s0,0x5c
/* f0292fc: 0fc0a475 */ jal func0f0291d4
/* f029300: 02022021 */ addu $a0,$s0,$v0
/* f029304: 2610005c */ addiu $s0,$s0,0x5c
.L0f029308:
/* f029308: 5613fff8 */ bnel $s0,$s3,.L0f0292ec
/* f02930c: 8e420000 */ lw $v0,0x0($s2)
/* f029310: 8fbf0024 */ lw $ra,0x24($sp)
/* f029314: 8fb00014 */ lw $s0,0x14($sp)
/* f029318: 8fb10018 */ lw $s1,0x18($sp)
/* f02931c: 8fb2001c */ lw $s2,0x1c($sp)
/* f029320: 8fb30020 */ lw $s3,0x20($sp)
/* f029324: 03e00008 */ jr $ra
/* f029328: 27bd0028 */ addiu $sp,$sp,0x28
);
void func0f0292bc(struct prop *prop)
{
s32 i;
for (i = 0; i < 20; i++) {
if (prop == var80062a8c[i].prop) {
func0f0291d4(&var80062a8c[i]);
}
}
}
GLOBAL_ASM(
glabel func0f02932c

View File

@ -97,7 +97,7 @@ u32 var80062a7c = 0x00000000;
u32 var80062a80 = 0x00000000;
u32 var80062a84 = 0x00000000;
u32 var80062a88 = 0x00000000;
u32 var80062a8c = 0x00000000;
struct var80062a8c *var80062a8c = NULL; // pointer to array
u32 var80062a90 = 0x00000000;
u32 var80062a94 = 0x00000000;
u32 var80062a98 = 0x00000000;

View File

@ -49,7 +49,7 @@ u32 func0f028d50(void);
u32 func0f028e18(void);
u32 func0f028e6c(void);
u32 func0f028f7c(void);
u32 func0f0291d4(void);
void func0f0291d4(struct var80062a8c *thing);
void func0f0292bc(struct prop *prop);
u32 func0f02932c(void);
u32 func0f0293ec(void);

View File

@ -102,7 +102,7 @@ extern u32 var800629fc;
extern u32 var80062a3c;
extern u8 var80062a48[];
extern u32 var80062a4c;
extern u32 var80062a8c;
extern struct var80062a8c *var80062a8c;
extern u32 var80062a90;
extern u32 var80062a94;
extern u32 var80062aa0;

View File

@ -6268,4 +6268,30 @@ struct rend_vidat {
/*0x28*/ u32 unk28;
};
struct var80062a8c {
/*0x00*/ struct prop *prop;
/*0x04*/ u32 unk004;
/*0x08*/ u32 unk008;
/*0x0c*/ u32 unk00c;
/*0x10*/ u32 unk010;
/*0x14*/ u32 unk014;
/*0x18*/ u32 unk018;
/*0x1c*/ u32 unk01c;
/*0x20*/ u32 unk020;
/*0x24*/ u32 unk024;
/*0x28*/ u32 unk028;
/*0x2c*/ u32 unk02c;
/*0x30*/ u32 unk030;
/*0x34*/ u32 unk034;
/*0x38*/ u32 unk038;
/*0x3c*/ u32 unk03c;
/*0x40*/ u32 unk040;
/*0x44*/ u32 unk044;
/*0x48*/ u32 unk048;
/*0x4c*/ u32 unk04c;
/*0x50*/ u32 unk050;
/*0x54*/ u32 unk054;
/*0x58*/ u32 unk058;
};
#endif