Merge pull request #353 from gamemasterplc/main

Decompile m431dll/object.c
This commit is contained in:
Liam Coleman 2024-06-16 11:49:05 -05:00 committed by GitHub
commit 57b63b1a14
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 1404 additions and 85 deletions

View file

@ -169,37 +169,37 @@ lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 scope:local data:
lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 scope:local data:float
lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 scope:local data:float
lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 data:float
lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 data:float
lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 data:float
lbl_1_rodata_194 = .rodata:0x00000194; // type:object size:0x4 data:float
lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x4 data:float
lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 data:float
lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 data:double
lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 data:double
lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 data:float
lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 data:double
lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 data:2byte
lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 data:float
lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 data:double
lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 data:double
lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 data:float
lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0x4 data:float
lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 data:float
lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 data:float
lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 data:float
lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 data:float
lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 data:float
lbl_1_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 data:float
lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 data:float
lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0x4 data:float
lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 data:float
lbl_1_rodata_20C = .rodata:0x0000020C; // type:object size:0x4 data:float
lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 data:float
lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 data:double
lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 data:float
lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 data:double
lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 data:float
lbl_1_rodata_188 = .rodata:0x00000188; // type:object size:0x4 scope:local data:float
lbl_1_rodata_18C = .rodata:0x0000018C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_190 = .rodata:0x00000190; // type:object size:0x4 scope:local data:float
lbl_1_rodata_194 = .rodata:0x00000194; // type:object size:0x4 scope:local data:float
lbl_1_rodata_198 = .rodata:0x00000198; // type:object size:0x4 scope:local data:float
lbl_1_rodata_19C = .rodata:0x0000019C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1A0 = .rodata:0x000001A0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_1A8 = .rodata:0x000001A8; // type:object size:0x8 scope:local data:double
lbl_1_rodata_1B0 = .rodata:0x000001B0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1B8 = .rodata:0x000001B8; // type:object size:0x8 scope:local data:double
lbl_1_rodata_1C0 = .rodata:0x000001C0; // type:object size:0x8 scope:local data:2byte
lbl_1_rodata_1C8 = .rodata:0x000001C8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1D0 = .rodata:0x000001D0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_1D8 = .rodata:0x000001D8; // type:object size:0x8 scope:local data:double
lbl_1_rodata_1E0 = .rodata:0x000001E0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1E4 = .rodata:0x000001E4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1E8 = .rodata:0x000001E8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1EC = .rodata:0x000001EC; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1F0 = .rodata:0x000001F0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1F4 = .rodata:0x000001F4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1F8 = .rodata:0x000001F8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1FC = .rodata:0x000001FC; // type:object size:0x4 scope:local data:float
lbl_1_rodata_200 = .rodata:0x00000200; // type:object size:0x4 scope:local data:float
lbl_1_rodata_204 = .rodata:0x00000204; // type:object size:0x4 scope:local data:float
lbl_1_rodata_208 = .rodata:0x00000208; // type:object size:0x4 scope:local data:float
lbl_1_rodata_20C = .rodata:0x0000020C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_210 = .rodata:0x00000210; // type:object size:0x4 scope:local data:float
lbl_1_rodata_218 = .rodata:0x00000218; // type:object size:0x8 scope:local data:double
lbl_1_rodata_220 = .rodata:0x00000220; // type:object size:0x4 scope:local data:float
lbl_1_rodata_228 = .rodata:0x00000228; // type:object size:0x8 scope:local data:double
lbl_1_rodata_230 = .rodata:0x00000230; // type:object size:0x4 scope:local data:float
lbl_1_data_0 = .data:0x00000000; // type:object size:0xC
lbl_1_data_C = .data:0x0000000C; // type:object size:0xC
lbl_1_data_18 = .data:0x00000018; // type:object size:0x4
@ -223,11 +223,11 @@ lbl_1_data_174 = .data:0x00000174; // type:object size:0x10 scope:local data:str
lbl_1_data_184 = .data:0x00000184; // type:object size:0x26 scope:local data:string
lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x24 scope:local data:string
lbl_1_data_1D0 = .data:0x000001D0; // type:object size:0x4 data:float
lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x20
lbl_1_data_1D4 = .data:0x000001D4; // type:object size:0x20 data:float
lbl_1_data_1F4 = .data:0x000001F4; // type:object size:0x20
lbl_1_data_214 = .data:0x00000214; // type:object size:0x19 data:string
lbl_1_data_214 = .data:0x00000214; // type:object size:0x19 scope:local data:string
lbl_1_data_230 = .data:0x00000230; // type:object size:0x20
lbl_1_data_250 = .data:0x00000250; // type:object size:0x10
lbl_1_data_250 = .data:0x00000250; // type:object size:0x10 scope:local
lbl_1_data_260 = .data:0x00000260; // type:object size:0x8
lbl_1_data_268 = .data:0x00000268; // type:object size:0x4 data:2byte
lbl_1_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte

View file

@ -1072,7 +1072,7 @@ config.libs = [
objects={
Object(Matching, "REL/executor.c"),
Object(Matching, "REL/m431Dll/main.c"),
Object(NonMatching, "REL/m431Dll/object.c"),
Object(Matching, "REL/m431Dll/object.c"),
},
),
Rel(

View file

@ -3,6 +3,9 @@
#include "game/object.h"
#define rand16() ((rand8() << 8)|(rand8()))
typedef struct bss_12C_inner {
Vec unk0;
float unkC;
@ -11,34 +14,122 @@ typedef struct bss_12C_inner {
typedef struct bss_12c_struct {
s16 unk0[2];
u8 unk4[0x8];
s16 unk4;
s16 unk6;
s16 unk8;
Vec unkC;
u8 unk18[4];
Bss12CInner unk1C[2];
u8 unk44[0xF0];
float unk18;
Bss12CInner unk1C[10];
float unkE4[10][2];
s16 unk134[2];
s16 unk138[2];
} Bss12CStruct;
typedef struct bss_61C_work {
u8 unk0[0x4];
u32 unk0;
s16 unk4;
s16 unk6[2];
s16 unk6;
s16 unk8;
s16 unkA;
u8 unkC[8];
s16 unkC;
float unk10;
struct bss_61C_work *unk14;
u8 unk18[0x46];
Vec unk18;
Vec unk24;
float unk30;
omObjFunc unk34;
s16 unk38;
s16 unk3A;
u32 unk3C;
s16 unk40;
s16 unk42;
Vec unk44;
s16 unk50;
s8 unk52;
u32 unk54;
s16 unk58;
s16 unk5A;
s16 unk5C;
s16 unk5E[8];
s16 unk6E;
s16 unk70;
s16 unk72;
u8 unk74[0x44];
u32 unk74;
s16 unk78;
s16 unk7A;
s16 unk7C;
s16 unk7E;
s16 unk80;
s16 unk82;
s16 unk84;
s16 unk86;
float unk88;
Vec unk8C;
float unk98;
Vec unk9C;
float unkA8;
s32 unkAC;
s16 unkB0;
s16 unkB2;
s8 unkB4;
s8 unkB5;
} Bss61CWork;
typedef void (*unkHook72B4Data18)(struct unk_72B4_data_18 *);
typedef void (*unkHook72B4)(ModelData *, struct work_72B4 *, Mtx);
typedef struct unk_72B4_data_18 {
Vec unk0;
Vec unkC;
char unk18[16];
s16 unk28;
s16 unk2A;
s16 unk2C;
unkHook72B4Data18 unk30;
s16 unk34;
float unk38;
Vec unk3C;
Vec unk48;
s16 unk54;
s8 unk56;
} Unk72B4Data18;
typedef struct work_72B4 {
s16 unk0;
u32 unk4;
u8 unk8;
unkHook72B4 unkC;
AnimData *unk10;
s16 unk14;
Unk72B4Data18 *unk18;
Vec *unk1C;
HsfVector2f *unk20;
GXColor *unk24;
void *unk28;
Vec unk2C[4];
HsfVector2f *unk5C;
float unk60;
float unk64;
} Work72B4;
extern s32 lbl_1_bss_4;
extern Bss12CStruct lbl_1_bss_12C[4];
extern omObjData *lbl_1_bss_61C[4];
extern float lbl_1_data_1D0;
void fn_1_2000(s16 arg0);
void fn_1_2050(u16 arg0, u16 arg1);
u16 fn_1_2090(u16 arg0);
s16 fn_1_4724(void);
u32 fn_1_4738(s16 arg0, s16 arg1);
s16 fn_1_4B14(s16 arg0, s16 arg1, s16 *arg2);
s16 fn_1_4CDC(s16 arg0, s16 arg1);
void fn_1_5B70(float arg0, float arg1, float arg2, s16 arg3, unkHook72B4Data18 arg4, s16 arg5);
void fn_1_6184(Vec *arg0, Bss12CInner *arg1);
float fn_1_6504(float arg0, float arg1, float arg2);
void fn_1_7ABC(Process *objman);
s32 fn_1_7FB8(s16 arg0);
void fn_1_A7D0(s16 arg0);

View file

@ -18,7 +18,6 @@
#include "rel_sqrt_consts.h"
#define rand16() ((rand8() << 8)|(rand8()))
typedef struct bss_5C_struct {
s16 unk0[6];
@ -267,42 +266,6 @@ s32 fn_1_7B0(void)
return temp_r29;
}
typedef void (*unkHook72B4Data18)(struct unk_72B4_data_18 *);
typedef void (*unkHook72B4)(ModelData *, struct work_72B4 *, Mtx);
typedef struct unk_72B4_data_18 {
Vec unk0;
Vec unkC;
char unk18[16];
s16 unk28;
s16 unk2A;
s16 unk2C;
unkHook72B4Data18 unk30;
s16 unk34;
float unk38;
Vec unk3C;
Vec unk48;
s16 unk54;
s8 unk56;
} Unk72B4Data18;
typedef struct work_72B4 {
s16 unk0;
u32 unk4;
u8 unk8;
unkHook72B4 unkC;
AnimData *unk10;
s16 unk14;
Unk72B4Data18 *unk18;
Vec *unk1C;
HsfVector2f *unk20;
GXColor *unk24;
void *unk28;
Vec unk2C[4];
HsfVector2f *unk5C;
float unk60;
float unk64;
} Work72B4;
void fn_1_6030(ModelData *arg0, Work72B4 *arg1, Mtx arg2);
s16 fn_1_6C74(AnimData *arg0, s16 arg1, float arg2, s16 arg3, s16 arg4);
@ -400,9 +363,7 @@ void fn_1_A44(omObjData *object)
void fn_1_140C(omObjData *object);
u8 fn_1_1634(omObjData *object);
u8 fn_1_1A40(omObjData *object);
void fn_1_2000(s16 arg0);
void fn_1_2050(u16 arg0, u16 arg1);
u16 fn_1_2090(u16 arg0);
void fn_1_5480(void);
void fn_1_10A4(omObjData *object)
@ -1174,7 +1135,6 @@ void fn_1_3540(Work2110 *arg0)
void fn_1_3FD0(Unk72B4Data18 *arg0);
void fn_1_5B70(float arg0, float arg1, float arg2, s16 arg3, unkHook72B4Data18 arg4, s16 arg5);
void fn_1_3D7C(Work2110 *arg0)
{

1268
src/REL/m431Dll/object.c Normal file

File diff suppressed because it is too large Load diff