Attempt to decompile mpChrReset

This commit is contained in:
Ryan Dwyer
2020-01-13 19:55:08 +10:00
parent 912fa4f554
commit 74ff31f06b
6 changed files with 375 additions and 151 deletions
+1 -1
View File
@@ -122,7 +122,7 @@ s32 func0f18e9ec(s32 arg0, struct prop *token, struct coord *dist, s32 colour, s
u32 func0f18f874(void);
u32 func0f190060(void);
u32 func0f190260(void);
u32 func0f19028c(void);
void mpChrReset(struct chrdata *chr, u8 full);
u32 func0f1905f0(void);
u32 func0f190708(void);
u32 func0f190774(void);
+1 -1
View File
@@ -5,7 +5,7 @@
u32 func0f197600(void);
u32 func0f197af4(void);
u32 func0f197c00(void);
void func0f197c00(struct chrdata *chr);
u32 func0f197c70(void);
u32 func0f197cf0(void);
u32 func0f197d94(void);
+182 -98
View File
@@ -133,91 +133,104 @@ struct chr020 {
/*0x20*/ struct anim *anim;
};
struct chr2d4_01c {
u32 unk00[33];
};
struct chr2d4 {
/*0x00*/ u8 unk00;
/*0x04*/ u32 unk04;
/*0x08*/ u16 unk08;
/*0x08*/ s16 followingplayernum;
/*0x0c*/ u32 unk0c;
/*0x10*/ struct prop *prop;
/*0x14*/ u32 unk14;
/*0x18*/ u32 unk18;
/*0x1c*/ u32 unk1c;
/*0x20*/ u32 unk20;
/*0x24*/ u32 unk24;
/*0x28*/ u32 unk28;
/*0x2c*/ u32 unk2c;
/*0x30*/ u32 unk30;
/*0x34*/ u32 unk34;
/*0x38*/ u32 unk38;
/*0x3c*/ u32 unk3c;
/*0x40*/ u32 unk40;
/*0x44*/ u32 unk44;
/*0x48*/ u32 unk48;
/*0x4c*/ u8 unk4c_00 : 1;
/*0x4c*/ u8 unk4c_01 : 1;
/*0x4c*/ u8 unk4c_02 : 1;
/*0x4c*/ u8 unk4c_03 : 1;
/*0x4c*/ u8 unk4c_04 : 1;
/*0x4c*/ u8 unk4c_05 : 1;
/*0x4c*/ u8 unk4c_06 : 1;
/*0x4c*/ u8 unk4c_07 : 1;
/*0x4d*/ u8 unk4d;
/*0x4e*/ u8 unk4e;
/*0x4f*/ u8 unk4f_00 : 1;
/*0x4f*/ u8 unk4f_01 : 1;
/*0x4f*/ u8 unk4f_02 : 1;
/*0x4f*/ u8 unk4f_03 : 1;
/*0x4f*/ u8 unk4f_04 : 1;
/*0x4f*/ u8 unk4f_05 : 1;
/*0x4f*/ u8 unk4f_06 : 1;
/*0x4f*/ u8 unk4f_07 : 1;
/*0x50*/ u32 unk50;
/*0x54*/ u32 unk54;
/*0x58*/ u32 unk58;
/*0x5c*/ u32 unk5c;
/*0x60*/ u32 unk60;
/*0x64*/ u32 unk64;
/*0x68*/ u32 unk68;
/*0x6c*/ u32 unk6c;
/*0x70*/ u32 unk70;
/*0x74*/ u32 unk74;
/*0x78*/ u8 unk78;
/*0x79*/ u8 unk79;
/*0x7a*/ s8 unk7a;
/*0x7c*/ u32 unk7c;
/*0x80*/ u32 unk80;
/*0x84*/ u32 unk84;
/*0x88*/ u32 unk88;
/*0x8c*/ struct coord unk8c;
/*0x98*/ f32 unk98;
/*0x9c*/ u8 unk9c_00 : 1;
/*0x9c*/ u8 unk9c_01 : 1;
/*0x9c*/ u8 unk9c_02 : 1;
/*0x9c*/ u8 unk9c_03 : 1;
/*0x9c*/ u8 unk9c_04 : 1;
/*0x9c*/ u8 unk9c_05 : 1;
/*0x9c*/ u8 unk9c_06 : 1;
/*0x9c*/ u8 unk9c_07 : 1;
/*0xa0*/ s32 unka0;
/*0xa4*/ f32 unka4;
/*0xa8*/ u32 unka8;
/*0xac*/ u32 unkac;
/*0xb0*/ f32 unkb0;
/*0xb4*/ u32 unkb4;
/*0xb8*/ u32 unkb8;
/*0xbc*/ u32 unkbc;
/*0xc0*/ s32 unkc0_propindex;
/*0xc4*/ u32 unkc4;
/*0xc8*/ u32 unkc8;
/*0xcc*/ u32 unkcc;
/*0xd0*/ u32 unkd0;
/*0xd4*/ u32 unkd4_propindex;
/*0xd8*/ s32 unkd8;
/*0x000*/ u8 unk000;
/*0x004*/ struct mpsim *simulant;
/*0x008*/ u16 unk008;
/*0x008*/ s16 followingplayernum;
/*0x00c*/ u32 unk00c;
/*0x010*/ struct prop *prop;
/*0x014*/ u32 unk014;
/*0x018*/ u32 unk018;
/*0x01c*/ struct chr2d4_01c *unk01c;
/*0x020*/ u32 unk020;
/*0x024*/ u32 unk024;
/*0x028*/ u32 unk028;
/*0x02c*/ u16 unk02c;
/*0x02e*/ u16 unk02e;
/*0x030*/ u32 unk030;
/*0x034*/ u32 unk034;
/*0x038*/ u32 unk038;
/*0x03c*/ u16 unk03c;
/*0x03e*/ s16 unk03e;
/*0x040*/ f32 unk040;
/*0x044*/ u32 unk044;
/*0x048*/ s16 unk048;
/*0x04a*/ s16 unk04a;
/*0x04c*/ u8 unk04c_00 : 1;
/*0x04c*/ u8 unk04c_01 : 1;
/*0x04c*/ u8 unk04c_02 : 1;
/*0x04c*/ u8 unk04c_03 : 1;
/*0x04c*/ u8 unk04c_04 : 1;
/*0x04c*/ u8 unk04c_05 : 1;
/*0x04c*/ u8 unk04c_06 : 1;
/*0x04c*/ u8 unk04c_07 : 1;
/*0x04d*/ u8 unk04d;
/*0x04e*/ u8 unk04e;
/*0x04f*/ u8 unk04f_00 : 1;
/*0x04f*/ u8 unk04f_01 : 1;
/*0x04f*/ u8 unk04f_02 : 1;
/*0x04f*/ u8 unk04f_03 : 1;
/*0x04f*/ u8 unk04f_04 : 1;
/*0x04f*/ u8 unk04f_05 : 1;
/*0x04f*/ u8 unk04f_06 : 1;
/*0x04f*/ u8 unk04f_07 : 1;
/*0x050*/ u32 unk050;
/*0x054*/ u32 unk054;
/*0x058*/ u8 unk058;
/*0x058*/ u8 unk059;
/*0x05c*/ u32 unk05c;
/*0x060*/ u32 unk060;
/*0x064*/ u16 unk064;
/*0x068*/ u32 unk068;
/*0x06c*/ f32 unk06c;
/*0x070*/ f32 unk070;
/*0x074*/ s8 unk074;
/*0x075*/ s8 unk075;
/*0x076*/ s8 unk076;
/*0x077*/ s8 unk077;
/*0x078*/ u8 unk078;
/*0x079*/ u8 unk079;
/*0x07a*/ s8 unk07a;
/*0x07c*/ u32 unk07c;
/*0x080*/ u32 unk080;
/*0x084*/ u32 unk084;
/*0x088*/ u32 unk088;
/*0x08c*/ struct coord unk08c;
/*0x098*/ f32 unk098;
/*0x09c*/ u8 unk09c_00 : 1;
/*0x09c*/ u8 unk09c_01 : 1;
/*0x09c*/ u8 unk09c_02 : 1;
/*0x09c*/ u8 unk09c_03 : 1;
/*0x09c*/ u8 unk09c_04 : 1;
/*0x09c*/ u8 unk09c_05 : 1;
/*0x09c*/ u8 unk09c_06 : 1;
/*0x09c*/ u8 unk09c_07 : 1;
/*0x09d*/ u8 unk09d;
/*0x0a0*/ s32 unk0a0;
/*0x0a4*/ f32 unk0a4;
/*0x0a8*/ u32 unk0a8;
/*0x0ac*/ u32 unk0ac;
/*0x0b0*/ f32 unk0b0;
/*0x0b4*/ u32 unk0b4;
/*0x0b8*/ u32 unk0b8;
/*0x0bc*/ s32 unk0bc;
/*0x0c0*/ s32 unk0c0_propindex;
/*0x0c4*/ u32 unk0c4;
/*0x0c8*/ u32 unk0c8;
/*0x0cc*/ u32 unk0cc;
/*0x0d0*/ u32 unk0d0;
/*0x0d4*/ u32 unk0d4_propindex;
/*0x0d8*/ s32 unk0d8;
/*0x0dc*/ u32 unk0dc;
/*0x0e0*/ u32 unk0e0;
/*0x0e4*/ u32 unk0e4;
/*0x0e8*/ u32 unk0e8;
/*0x0e0*/ u16 unk0e0;
/*0x0e2*/ u16 unk0e2;
/*0x0e4*/ f32 unk0e4;
/*0x0e8*/ f32 unk0e8;
/*0x0ec*/ u32 unk0ec;
/*0x0f0*/ u32 unk0f0;
/*0x0f4*/ u32 unk0f4;
@@ -225,20 +238,91 @@ struct chr2d4 {
/*0x0fc*/ u32 unk0fc;
/*0x100*/ u32 unk100;
/*0x104*/ u32 unk104;
/*0x108*/ u32 unk108;
/*0x10c*/ u32 unk10c;
/*0x110*/ u32 unk110;
/*0x108*/ f32 unk108;
/*0x10c*/ f32 unk10c;
/*0x110*/ f32 unk110;
/*0x114*/ u32 unk114;
/*0x118*/ u32 unk118;
/*0x11c*/ u32 unk11c;
/*0x120*/ u32 unk120;
/*0x124*/ u32 unk124;
/*0x120*/ s32 unk120;
/*0x124*/ s32 unk124;
/*0x128*/ u32 unk128;
/*0x12c*/ u32 unk12c;
/*0x130*/ u32 unk130;
/*0x134*/ u32 unk134;
/*0x138*/ u32 unk138;
/*0x13c*/ f32 unk13c[1];
/*0x130*/ s8 unk130[12];
/*0x13c*/ f32 unk13c[12];
/*0x16c*/ u8 unk16c[12];
/*0x178*/ s32 unk178[12];
/*0x1a8*/ s16 unk1a8[12];
/*0x1c0*/ u32 unk1c0;
/*0x1c4*/ u32 unk1c4;
/*0x1c8*/ u32 unk1c8;
/*0x1cc*/ u32 unk1cc;
/*0x1d0*/ u32 unk1d0;
/*0x1d4*/ u32 unk1d4;
/*0x1d8*/ u32 unk1d8;
/*0x1dc*/ u32 unk1dc;
/*0x1e0*/ u32 unk1e0;
/*0x1e4*/ u32 unk1e4;
/*0x1e8*/ u32 unk1e8;
/*0x1ec*/ u32 unk1ec;
/*0x1f0*/ u32 unk1f0;
/*0x1f4*/ u32 unk1f4;
/*0x1f8*/ u32 unk1f8;
/*0x1fc*/ u32 unk1fc;
/*0x200*/ u32 unk200;
/*0x204*/ u32 unk204;
/*0x208*/ u32 unk208;
/*0x20c*/ u32 unk20c;
/*0x210*/ u32 unk210;
/*0x214*/ u32 unk214;
/*0x218*/ u32 unk218;
/*0x21c*/ u32 unk21c;
/*0x220*/ u32 unk220;
/*0x224*/ u32 unk224;
/*0x228*/ u32 unk228;
/*0x22c*/ u32 unk22c;
/*0x230*/ u32 unk230;
/*0x234*/ u32 unk234;
/*0x238*/ u32 unk238;
/*0x23c*/ u32 unk23c;
/*0x240*/ u32 unk240;
/*0x244*/ u32 unk244;
/*0x248*/ u32 unk248;
/*0x24c*/ u32 unk24c;
/*0x250*/ u32 unk250;
/*0x254*/ u32 unk254;
/*0x258*/ u32 unk258;
/*0x25c*/ u32 unk25c;
/*0x260*/ u32 unk260;
/*0x264*/ u32 unk264;
/*0x268*/ u32 unk268;
/*0x26c*/ u32 unk26c;
/*0x270*/ u32 unk270;
/*0x274*/ u32 unk274;
/*0x278*/ u32 unk278;
/*0x27c*/ u32 unk27c;
/*0x280*/ u32 unk280;
/*0x284*/ u32 unk284;
/*0x288*/ u32 unk288;
/*0x28c*/ u32 unk28c;
/*0x290*/ u32 unk290;
/*0x294*/ u32 unk294;
/*0x298*/ u32 unk298;
/*0x29c*/ u32 unk29c;
/*0x2a0*/ u32 unk2a0;
/*0x2a4*/ u32 unk2a4;
/*0x2a8*/ u32 unk2a8;
/*0x2ac*/ u32 unk2ac;
/*0x2b0*/ u32 unk2b0;
/*0x2b4*/ u32 unk2b4;
/*0x2b8*/ u32 unk2b8;
/*0x2bc*/ u32 unk2bc;
/*0x2c0*/ u32 unk2c0;
/*0x2c4*/ f32 unk2c4;
/*0x2c8*/ u32 unk2c8;
/*0x2cc*/ u32 unk2cc;
/*0x2d0*/ u32 unk2d0;
/*0x2d4*/ f32 unk2d4;
};
struct act_stand {
@@ -334,7 +418,7 @@ struct chrdata {
/*0x000*/ s16 chrnum;
/*0x002*/ s8 accuracyrating;
/*0x003*/ s8 speedrating;
/*0x004*/ u16 firecount;
/*0x004*/ u8 firecount[2];
/*0x006*/ s8 headnum;
/*0x007*/ s8 actiontype;
/*0x008*/ s8 sleep;
@@ -352,8 +436,8 @@ struct chrdata {
/*0x018*/ u32 chrflags;
/*0x01c*/ struct prop *prop;
/*0x020*/ struct chr020 *unk020;
/*0x024*/ u32 chrwidth;
/*0x028*/ u32 chrheight;
/*0x024*/ f32 chrwidth;
/*0x028*/ f32 chrheight;
union {
struct act_stand act_stand;
@@ -440,7 +524,7 @@ struct chrdata {
/*0x140*/ u32 unk140;
/*0x144*/ u32 unk144;
/*0x148*/ u32 unk148;
/*0x14c*/ u32 shotbondsum;
/*0x14c*/ f32 shotbondsum;
/*0x150*/ u32 aimuplshoulder;
/*0x154*/ u32 aimuprshoulder;
/*0x158*/ u32 aimupback;
@@ -4026,12 +4110,12 @@ struct mpchr {
/*0x20*/ u32 unk20;
/*0x24*/ s16 unk24[12];
/*0x3c*/ s16 unk3c;
/*0x3c*/ s16 unk3e;
/*0x3e*/ s16 unk3e;
/*0x40*/ u32 unk40;
/*0x44*/ u8 controlmode;
/*0x45*/ s8 unk45;
/*0x46*/ s8 unk46;
/*0x47*/ u8 unk47;
/*0x47*/ u8 simtype;
};
struct mpplayer {