mirror of
https://gitlab.com/dk64_decomp/dk64.git
synced 2025-02-19 23:41:20 +00:00
22.3035%
This commit is contained in:
parent
8c80160c7d
commit
c0d5fdb761
@ -772,7 +772,7 @@ void func_8070E8DC(u8 arg0);
|
||||
void func_80630300(void);
|
||||
void func_8063039C(void);
|
||||
void func_806307AC(Chunk14 *current);
|
||||
void func_806307CC(Chunk14 *arg0, s32 arg1, u8 arg2, u8 arg3, s8 *arg4);
|
||||
void func_806307CC(Chunk14 *arg0, Model2Model *arg1, u8 arg2, u8 arg3, s8 *arg4);
|
||||
u8 func_80663FCC(s16 model2ArrayIndex);
|
||||
s32 func_80629148(void);
|
||||
void func_806CBE90(void);
|
||||
@ -1164,7 +1164,7 @@ void func_80665ACC(Actor *arg0);
|
||||
void func_80665548(void);
|
||||
u8 func_80665558(void);
|
||||
u8 func_80665AAC(Actor *arg0);
|
||||
Chunk14 *func_806303C4(Chunk14 *arg0, u8 arg1, s32 arg2, f32 arg3, f32 arg4, f32 arg5, s16 arg6, s16 arg7, u8 arg8, s16 arg9, u8 argA);
|
||||
Chunk14 *func_806303C4(Chunk14 *arg0, u8 arg1, Model2Model *arg2, f32 arg3, f32 arg4, f32 arg5, s16 arg6, s16 arg7, u8 arg8, s16 arg9, u8 argA);
|
||||
void func_80666280(u8 arg0);
|
||||
void func_80666290(Actor *arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, u8 arg5);
|
||||
void func_806663F8(void);
|
||||
|
@ -1366,10 +1366,238 @@ typedef struct {
|
||||
u8 unk2EF;
|
||||
} CharacterChange;
|
||||
|
||||
typedef struct global_asm_struct_83 GlobalASMStruct83;
|
||||
struct global_asm_struct_83 {
|
||||
Actor* unk0;
|
||||
u32 unk4;
|
||||
Actor* unk8;
|
||||
GlobalASMStruct83 *next;
|
||||
};
|
||||
|
||||
typedef struct model_2_model_50_b8 Model2Model50_B8;
|
||||
|
||||
struct model_2_model_50_b8 {
|
||||
s32 unk0[4];
|
||||
s32 unk10[4];
|
||||
s32 unk20[4];
|
||||
s32 unk30;
|
||||
s32 unk34;
|
||||
s16 unk38; // Used
|
||||
s16 unk3A; // Used
|
||||
s32 unk3C;
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
u8 unk48; // Used
|
||||
u8 unk49; // used
|
||||
u8 unk4A;
|
||||
u8 unk4B;
|
||||
s32 unk4C;
|
||||
s32 unk50; // Used
|
||||
s32 unk54; // Used
|
||||
s32 unk58;
|
||||
s32 unk5C;
|
||||
s32 unk60[4];
|
||||
s32 unk70[4];
|
||||
s32 unk80[4];
|
||||
s32 unk90[4];
|
||||
s32 unkA0[4];
|
||||
s32 unkB0[4];
|
||||
s32 unkC0[4];
|
||||
u8 unkD0;
|
||||
u8 unkD1;
|
||||
u8 unkD2;
|
||||
u8 unkD3;
|
||||
Model2Model50_B8 *next; // unkD4
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
f32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
s32 unk1C;
|
||||
s16 unk20;
|
||||
s16 unk22;
|
||||
} Model2Model54_BC;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0[4];
|
||||
s32 unk10[4];
|
||||
s32 unk20[4];
|
||||
s32 unk30[4];
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
s32 unk48;
|
||||
s16 unk4C;
|
||||
u8 unk4E; // Used
|
||||
u8 unk4F; // Used
|
||||
Model2Model50_B8 *unk50; // Used, pointer
|
||||
Model2Model54_BC *unk54;
|
||||
s32 unk58;
|
||||
s32 unk5C;
|
||||
s32 unk60[4];
|
||||
s32 unk70[4];
|
||||
s32 unk80[4];
|
||||
s32 unk90[4];
|
||||
s32 unkA0[4];
|
||||
s32 unkB0;
|
||||
s32 unkB4;
|
||||
Model2Model50_B8 *unkB8; // Used, pointer
|
||||
Model2Model54_BC *unkBC; // Used
|
||||
} Model2Model;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s16 unk10;
|
||||
s16 unk12;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
s32 unk1C;
|
||||
s32 unk20;
|
||||
s32 unk24;
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
s32 unk30;
|
||||
s32 unk34;
|
||||
s32 unk38;
|
||||
s32 unk3C;
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
s8 unk48[1]; // TODO: How many elements?
|
||||
s8 unk49;
|
||||
s8 unk4A;
|
||||
s8 unk4B;
|
||||
s32 unk4C;
|
||||
s32 unk50;
|
||||
s8 unk54;
|
||||
s8 unk55;
|
||||
s8 unk56;
|
||||
s8 unk57;
|
||||
s32 unk58;
|
||||
s32 unk5C;
|
||||
u8 unk60;
|
||||
u8 unk61;
|
||||
u8 unk62;
|
||||
u8 unk63;
|
||||
s16 unk64;
|
||||
s16 unk66;
|
||||
s32 unk68;
|
||||
s32 unk6C;
|
||||
s32 unk70;
|
||||
s32 unk74;
|
||||
s32 unk78;
|
||||
s32 unk7C;
|
||||
s32 unk80;
|
||||
s32 unk84;
|
||||
s32 unk88;
|
||||
s32 unk8C;
|
||||
s32 unk90;
|
||||
s32 unk94;
|
||||
s32 unk98;
|
||||
s32 unk9C;
|
||||
s32 unkA0;
|
||||
} OM2_unk7C;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
u8 unk1C;
|
||||
u8 unk1D;
|
||||
u8 unk1E;
|
||||
u8 unk1F;
|
||||
s32 unk20;
|
||||
s32 unk24;
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
s32 unk30;
|
||||
s32 unk34;
|
||||
s32 unk38;
|
||||
s16 unk3C;
|
||||
s16 unk3E;
|
||||
} OM2_unk24;
|
||||
|
||||
typedef struct OM2_unk74 OM2_unk74;
|
||||
|
||||
struct OM2_unk74 {
|
||||
f32 unk0;
|
||||
f32 unk4;
|
||||
f32 unk8;
|
||||
s32 next;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
s16 unk0;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 unk4;
|
||||
s8 unk5;
|
||||
u8 unk6;
|
||||
u8 unk7;
|
||||
s32 unk8;
|
||||
f32 unkC;
|
||||
s16 unk10;
|
||||
s16 unk12;
|
||||
} OM2_unk78;
|
||||
|
||||
typedef struct object_model2 {
|
||||
f32 x_position; // at 0x00
|
||||
f32 y_position; // at 0x04
|
||||
f32 z_position; // at 0x08
|
||||
f32 hitbox_scale; // at 0x0C
|
||||
f32 x_rotation; // at 0x10
|
||||
f32 y_rotation; // at 0x14
|
||||
f32 z_rotation; // at 0x18
|
||||
f32 unk1C;
|
||||
Model2Model *model_pointer; // at 0x20
|
||||
OM2_unk24 *unk24; // labelled behavior_type_pointer in ScriptHawk
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
s32 unk30;
|
||||
s32 unk34;
|
||||
s32 unk38;
|
||||
s32 unk3C;
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
s32 unk48;
|
||||
s32 unk4C;
|
||||
s32 unk50;
|
||||
s32 unk54;
|
||||
s32 unk58;
|
||||
s32 unk5C;
|
||||
s32 unk60;
|
||||
s32 unk64;
|
||||
s32 unk68;
|
||||
s32 unk6C;
|
||||
GlobalASMStruct83 *unk70;
|
||||
OM2_unk74 *unk74;
|
||||
OM2_unk78 *unk78; // used in func_80650AD8, weird format
|
||||
OM2_unk7C *unk7C; // labelled behavior_pointer in ScriptHawk
|
||||
s32 unk80;
|
||||
s16 object_type; // at 0x84
|
||||
s16 unk86;
|
||||
s16 unk88;
|
||||
s16 unk8A;
|
||||
u8 unk8C; // bitfield, collectable state (u8)
|
||||
u8 unk8D;
|
||||
u8 unk8E;
|
||||
u8 unk8F;
|
||||
} ObjectModel2;
|
||||
|
||||
typedef struct chunk_14 Chunk14;
|
||||
|
||||
struct chunk_14 {
|
||||
s32 unk0;
|
||||
Model2Model *unk0;
|
||||
f32 unk4;
|
||||
f32 unk8;
|
||||
f32 unkC;
|
||||
|
@ -201,223 +201,6 @@ typedef struct DKTVExtraData {
|
||||
|
||||
extern DKTVExtraData D_807ECE20;
|
||||
|
||||
typedef struct model_2_model_50_b8 Model2Model50_B8;
|
||||
|
||||
struct model_2_model_50_b8 {
|
||||
s32 unk0[4];
|
||||
s32 unk10[4];
|
||||
s32 unk20[4];
|
||||
s32 unk30;
|
||||
s32 unk34;
|
||||
s16 unk38; // Used
|
||||
s16 unk3A; // Used
|
||||
s32 unk3C;
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
u8 unk48; // Used
|
||||
u8 unk49; // used
|
||||
u8 unk4A;
|
||||
u8 unk4B;
|
||||
s32 unk4C;
|
||||
s32 unk50; // Used
|
||||
s32 unk54; // Used
|
||||
s32 unk58;
|
||||
s32 unk5C;
|
||||
s32 unk60[4];
|
||||
s32 unk70[4];
|
||||
s32 unk80[4];
|
||||
s32 unk90[4];
|
||||
s32 unkA0[4];
|
||||
s32 unkB0[4];
|
||||
s32 unkC0[4];
|
||||
s32 unkD0;
|
||||
Model2Model50_B8 *next; // unkD4
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
f32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
s32 unk1C;
|
||||
s16 unk20;
|
||||
s16 unk22;
|
||||
} Model2Model54_BC;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0[4];
|
||||
s32 unk10[4];
|
||||
s32 unk20[4];
|
||||
s32 unk30[4];
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
s32 unk48;
|
||||
s16 unk4C;
|
||||
u8 unk4E; // Used
|
||||
u8 unk4F; // Used
|
||||
Model2Model50_B8 *unk50; // Used, pointer
|
||||
Model2Model54_BC *unk54;
|
||||
s32 unk58;
|
||||
s32 unk5C;
|
||||
s32 unk60[4];
|
||||
s32 unk70[4];
|
||||
s32 unk80[4];
|
||||
s32 unk90[4];
|
||||
s32 unkA0[4];
|
||||
s32 unkB0;
|
||||
s32 unkB4;
|
||||
Model2Model50_B8 *unkB8; // Used, pointer
|
||||
Model2Model54_BC *unkBC; // Used
|
||||
} Model2Model;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s16 unk10;
|
||||
s16 unk12;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
s32 unk1C;
|
||||
s32 unk20;
|
||||
s32 unk24;
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
s32 unk30;
|
||||
s32 unk34;
|
||||
s32 unk38;
|
||||
s32 unk3C;
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
s8 unk48[1]; // TODO: How many elements?
|
||||
s8 unk49;
|
||||
s8 unk4A;
|
||||
s8 unk4B;
|
||||
s32 unk4C;
|
||||
s32 unk50;
|
||||
s8 unk54;
|
||||
s8 unk55;
|
||||
s8 unk56;
|
||||
s8 unk57;
|
||||
s32 unk58;
|
||||
s32 unk5C;
|
||||
u8 unk60;
|
||||
u8 unk61;
|
||||
u8 unk62;
|
||||
u8 unk63;
|
||||
s16 unk64;
|
||||
s16 unk66;
|
||||
s32 unk68;
|
||||
s32 unk6C;
|
||||
s32 unk70;
|
||||
s32 unk74;
|
||||
s32 unk78;
|
||||
s32 unk7C;
|
||||
s32 unk80;
|
||||
s32 unk84;
|
||||
s32 unk88;
|
||||
s32 unk8C;
|
||||
s32 unk90;
|
||||
s32 unk94;
|
||||
s32 unk98;
|
||||
s32 unk9C;
|
||||
s32 unkA0;
|
||||
} OM2_unk7C;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
u8 unk1C;
|
||||
u8 unk1D;
|
||||
u8 unk1E;
|
||||
u8 unk1F;
|
||||
s32 unk20;
|
||||
s32 unk24;
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
s32 unk30;
|
||||
s32 unk34;
|
||||
s32 unk38;
|
||||
s16 unk3C;
|
||||
s16 unk3E;
|
||||
} OM2_unk24;
|
||||
|
||||
typedef struct OM2_unk74 OM2_unk74;
|
||||
|
||||
struct OM2_unk74 {
|
||||
f32 unk0;
|
||||
f32 unk4;
|
||||
f32 unk8;
|
||||
s32 next;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
s16 unk0;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 unk4;
|
||||
s8 unk5;
|
||||
u8 unk6;
|
||||
u8 unk7;
|
||||
s32 unk8;
|
||||
f32 unkC;
|
||||
s16 unk10;
|
||||
s16 unk12;
|
||||
} OM2_unk78;
|
||||
|
||||
typedef struct object_model2 {
|
||||
f32 x_position; // at 0x00
|
||||
f32 y_position; // at 0x04
|
||||
f32 z_position; // at 0x08
|
||||
f32 hitbox_scale; // at 0x0C
|
||||
f32 x_rotation; // at 0x10
|
||||
f32 y_rotation; // at 0x14
|
||||
f32 z_rotation; // at 0x18
|
||||
s32 unk1C;
|
||||
Model2Model *model_pointer; // at 0x20
|
||||
OM2_unk24 *unk24; // labelled behavior_type_pointer in ScriptHawk
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
s32 unk30;
|
||||
s32 unk34;
|
||||
s32 unk38;
|
||||
s32 unk3C;
|
||||
s32 unk40;
|
||||
s32 unk44;
|
||||
s32 unk48;
|
||||
s32 unk4C;
|
||||
s32 unk50;
|
||||
s32 unk54;
|
||||
s32 unk58;
|
||||
s32 unk5C;
|
||||
s32 unk60;
|
||||
s32 unk64;
|
||||
s32 unk68;
|
||||
s32 unk6C;
|
||||
s32 unk70;
|
||||
OM2_unk74 *unk74;
|
||||
OM2_unk78 *unk78; // used in func_80650AD8, weird format
|
||||
OM2_unk7C *unk7C; // labelled behavior_pointer in ScriptHawk
|
||||
s32 unk80;
|
||||
s16 object_type; // at 0x84
|
||||
s16 unk86;
|
||||
s16 unk88;
|
||||
s16 unk8A;
|
||||
u8 unk8C; // bitfield, collectable state (u8)
|
||||
u8 unk8D;
|
||||
u8 unk8E;
|
||||
u8 unk8F;
|
||||
} ObjectModel2;
|
||||
|
||||
extern ObjectModel2 *D_807F6000;
|
||||
|
||||
extern u16 D_80744710[]; // = { // Permanent flag index lookup array
|
||||
|
@ -531,7 +531,7 @@ us,.code,func_806E61D0,100,yes
|
||||
us,.code,func_8065E0CC,88,yes
|
||||
us,.code,func_8072E7DC,140,no
|
||||
us,.code,func_80672680,92,yes
|
||||
us,.code,func_80636074,240,no
|
||||
us,.code,func_80636074,240,yes
|
||||
us,.code,func_806767B4,44,yes
|
||||
us,.code,func_806D9FD0,848,no
|
||||
us,.code,func_806FBEF0,1600,no
|
||||
@ -1044,7 +1044,7 @@ us,.code,func_8064C814,484,no
|
||||
us,.code,func_8066164C,12,yes
|
||||
us,.code,func_806DF280,272,yes
|
||||
us,.code,func_806D1E90,152,yes
|
||||
us,.code,func_806355DC,540,no
|
||||
us,.code,func_806355DC,540,yes
|
||||
us,.code,func_806CC5DC,92,yes
|
||||
us,.code,func_80679334,348,no
|
||||
us,.code,func_8069D078,32,yes
|
||||
@ -1417,7 +1417,7 @@ us,.code,func_806C71E0,8,yes
|
||||
us,.code,func_80732DAC,64,yes
|
||||
us,.code,func_8067A170,108,yes
|
||||
us,.code,func_8060CB74,40,yes
|
||||
us,.code,func_80636164,172,no
|
||||
us,.code,func_80636164,172,yes
|
||||
us,.code,func_8065054C,164,yes
|
||||
us,.code,func_806C4E8C,40,yes
|
||||
us,.code,func_806F4DC0,180,no
|
||||
@ -1762,7 +1762,7 @@ us,.code,func_806FCC88,1036,no
|
||||
us,.code,func_8062E67C,540,yes
|
||||
us,.code,func_806CFC90,216,yes
|
||||
us,.code,func_8067AF74,168,yes
|
||||
us,.code,func_806357F8,240,no
|
||||
us,.code,func_806357F8,240,yes
|
||||
us,.code,func_8073AB00,584,no
|
||||
us,.code,func_8066EBF4,120,yes
|
||||
us,.code,func_806D8FCC,360,yes
|
||||
@ -2211,7 +2211,7 @@ us,.code,func_8068AD7C,2704,no
|
||||
us,.code,func_8072E320,556,no
|
||||
us,.code,func_806CF4B8,200,yes
|
||||
us,.code,func_806E41EC,916,yes
|
||||
us,.code,func_80635548,64,no
|
||||
us,.code,func_80635548,64,yes
|
||||
us,.code,func_80670548,1812,no
|
||||
us,.code,func_806C71C0,8,yes
|
||||
us,.code,func_80604BE8,152,yes
|
||||
@ -2828,7 +2828,7 @@ us,.code,func_806E186C,484,yes
|
||||
us,.code,func_8060B968,104,no
|
||||
us,.code,func_8064EA48,108,yes
|
||||
us,.code,func_80685E78,232,no
|
||||
us,.code,func_80633570,64,no
|
||||
us,.code,func_80633570,64,yes
|
||||
us,.code,func_80661EC4,72,yes
|
||||
us,.code,func_80630B70,604,no
|
||||
us,.code,func_80602D4C,120,yes
|
||||
|
|
@ -531,7 +531,7 @@ us,.code,func_806E61D0,100,yes
|
||||
us,.code,func_8065E0CC,88,yes
|
||||
us,.code,func_8072E7DC,140,no
|
||||
us,.code,func_80672680,92,yes
|
||||
us,.code,func_80636074,240,no
|
||||
us,.code,func_80636074,240,yes
|
||||
us,.code,func_806767B4,44,yes
|
||||
us,.code,func_806D9FD0,848,no
|
||||
us,.code,func_806FBEF0,1600,no
|
||||
@ -1044,7 +1044,7 @@ us,.code,func_8064C814,484,no
|
||||
us,.code,func_8066164C,12,yes
|
||||
us,.code,func_806DF280,272,yes
|
||||
us,.code,func_806D1E90,152,yes
|
||||
us,.code,func_806355DC,540,no
|
||||
us,.code,func_806355DC,540,yes
|
||||
us,.code,func_806CC5DC,92,yes
|
||||
us,.code,func_80679334,348,no
|
||||
us,.code,func_8069D078,32,yes
|
||||
@ -1417,7 +1417,7 @@ us,.code,func_806C71E0,8,yes
|
||||
us,.code,func_80732DAC,64,yes
|
||||
us,.code,func_8067A170,108,yes
|
||||
us,.code,func_8060CB74,40,yes
|
||||
us,.code,func_80636164,172,no
|
||||
us,.code,func_80636164,172,yes
|
||||
us,.code,func_8065054C,164,yes
|
||||
us,.code,func_806C4E8C,40,yes
|
||||
us,.code,func_806F4DC0,180,no
|
||||
@ -1762,7 +1762,7 @@ us,.code,func_806FCC88,1036,no
|
||||
us,.code,func_8062E67C,540,yes
|
||||
us,.code,func_806CFC90,216,yes
|
||||
us,.code,func_8067AF74,168,yes
|
||||
us,.code,func_806357F8,240,no
|
||||
us,.code,func_806357F8,240,yes
|
||||
us,.code,func_8073AB00,584,no
|
||||
us,.code,func_8066EBF4,120,yes
|
||||
us,.code,func_806D8FCC,360,yes
|
||||
@ -2211,7 +2211,7 @@ us,.code,func_8068AD7C,2704,no
|
||||
us,.code,func_8072E320,556,no
|
||||
us,.code,func_806CF4B8,200,yes
|
||||
us,.code,func_806E41EC,916,yes
|
||||
us,.code,func_80635548,64,no
|
||||
us,.code,func_80635548,64,yes
|
||||
us,.code,func_80670548,1812,no
|
||||
us,.code,func_806C71C0,8,yes
|
||||
us,.code,func_80604BE8,152,yes
|
||||
@ -2828,7 +2828,7 @@ us,.code,func_806E186C,484,yes
|
||||
us,.code,func_8060B968,104,no
|
||||
us,.code,func_8064EA48,108,yes
|
||||
us,.code,func_80685E78,232,no
|
||||
us,.code,func_80633570,64,no
|
||||
us,.code,func_80633570,64,yes
|
||||
us,.code,func_80661EC4,72,yes
|
||||
us,.code,func_80630B70,604,no
|
||||
us,.code,func_80602D4C,120,yes
|
||||
|
|
@ -9,7 +9,7 @@
|
||||
</mask>
|
||||
<g mask="url(#anybadge_1)">
|
||||
<path fill="#555" d="M0 0h77v20H0z"/>
|
||||
<path fill="#c05700" d="M77 0h67v20H77z"/>
|
||||
<path fill="#c05800" d="M77 0h67v20H77z"/>
|
||||
<path fill="url(#b)" d="M0 0h144v20H0z"/>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
@ -17,7 +17,7 @@
|
||||
<text x="38.5" y="14">global_asm</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="111.5" y="15" fill="#010101" fill-opacity=".3">22.7103%</text>
|
||||
<text x="110.5" y="14">22.7103%</text>
|
||||
<text x="111.5" y="15" fill="#010101" fill-opacity=".3">22.8175%</text>
|
||||
<text x="110.5" y="14">22.8175%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@ -9,7 +9,7 @@
|
||||
</mask>
|
||||
<g mask="url(#anybadge_1)">
|
||||
<path fill="#555" d="M0 0h132v20H0z"/>
|
||||
<path fill="#c05500" d="M132 0h67v20H132z"/>
|
||||
<path fill="#c05600" d="M132 0h67v20H132z"/>
|
||||
<path fill="url(#b)" d="M0 0h199v20H0z"/>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
@ -17,7 +17,7 @@
|
||||
<text x="66.0" y="14">Donkey Kong 64 (US)</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="166.5" y="15" fill="#010101" fill-opacity=".3">22.2233%</text>
|
||||
<text x="165.5" y="14">22.2233%</text>
|
||||
<text x="166.5" y="15" fill="#010101" fill-opacity=".3">22.3035%</text>
|
||||
<text x="165.5" y="14">22.3035%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
@ -68,9 +68,7 @@ u8 func_8072F4A8(Actor *arg0, u8 arg1, f32 *arg2, f32 *arg3, f32 *arg4) {
|
||||
*arg2 = D_807F6000[model2ArrayIndex].x_position;
|
||||
*arg3 = D_807F6000[model2ArrayIndex].y_position;
|
||||
*arg4 = D_807F6000[model2ArrayIndex].z_position;
|
||||
// TODO: Better way to match this once proper type is known
|
||||
// It'll probably be D_807F6000[model2ArrayIndex].unk24->unk0
|
||||
if (*((s32*)D_807F6000[model2ArrayIndex].unk24) & 1) {
|
||||
if (D_807F6000[model2ArrayIndex].unk24->unk0 & 1) {
|
||||
phi_t0 = TRUE;
|
||||
}
|
||||
break;
|
||||
|
@ -68,7 +68,7 @@ void func_8063039C(void) {
|
||||
D_807F5FF4 = NULL;
|
||||
}
|
||||
|
||||
Chunk14 *func_806303C4(Chunk14 *arg0, u8 arg1, s32 arg2, f32 arg3, f32 arg4, f32 arg5, s16 arg6, s16 arg7, u8 arg8, s16 arg9, u8 argA) {
|
||||
Chunk14 *func_806303C4(Chunk14 *arg0, u8 arg1, Model2Model *arg2, f32 arg3, f32 arg4, f32 arg5, s16 arg6, s16 arg7, u8 arg8, s16 arg9, u8 argA) {
|
||||
Chunk14 *temp_v0;
|
||||
Chunk14 *phi_v1;
|
||||
s32 phi_v0;
|
||||
@ -143,7 +143,7 @@ Chunk14 *func_806303C4(Chunk14 *arg0, u8 arg1, s32 arg2, f32 arg3, f32 arg4, f32
|
||||
return phi_a1;
|
||||
}
|
||||
|
||||
Chunk14 *func_80630588(Chunk14 *arg0, s32 arg1, u8 arg2, u8 *arg3) {
|
||||
Chunk14 *func_80630588(Chunk14 *arg0, Model2Model *arg1, u8 arg2, u8 *arg3) {
|
||||
u8 phi_v0;
|
||||
Chunk14 *phi_t0;
|
||||
Chunk14 *phi_a2;
|
||||
@ -240,7 +240,7 @@ void func_806307AC(Chunk14 *current) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_806307CC(Chunk14 *arg0, s32 arg1, u8 arg2, u8 arg3, s8 *arg4) {
|
||||
void func_806307CC(Chunk14 *arg0, Model2Model *arg1, u8 arg2, u8 arg3, s8 *arg4) {
|
||||
s8 found = FALSE;
|
||||
|
||||
if (arg2 == 1) {
|
||||
|
@ -323,8 +323,15 @@ void func_80632FCC(s16 arg0, u8 arg1) {
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_806333F8.s")
|
||||
|
||||
// Loop, struct arg1, doable
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80633570.s")
|
||||
void func_80633570(GlobalASMStruct83 *arg0) {
|
||||
GlobalASMStruct83 *next;
|
||||
|
||||
while (arg0 != NULL) {
|
||||
next = arg0->next;
|
||||
func_8061130C(arg0);
|
||||
arg0 = next;
|
||||
}
|
||||
}
|
||||
|
||||
void func_806335B0(s32 arg0, u8 arg1, s32 arg2, f32 *arg3, f32 *arg4, f32 *arg5) {
|
||||
s32 var_v0;
|
||||
@ -496,18 +503,98 @@ void func_80635098(Model2Model50_B8 *arg0, s16 arg1, s32 arg2, s32 arg3) {
|
||||
}
|
||||
}
|
||||
|
||||
// Similar to below, loops over DL looking for specific commands (G_SETTIMG (0xFD), G_SETPRIMCOLOR (0xFA))
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80635114.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80635214.s")
|
||||
|
||||
/*
|
||||
// Aooears to find the offset of the first G_ENDDL command in a Display List
|
||||
// TODO: Regalloc
|
||||
s32 func_80635214(Gfx *arg0) {
|
||||
s32 found;
|
||||
s32 offset;
|
||||
|
||||
offset = 0;
|
||||
found = FALSE;
|
||||
while (!found) {
|
||||
if (((arg0++)->words.w0 >> 0x18) == G_ENDDL) {
|
||||
found = TRUE;
|
||||
}
|
||||
offset += 8;
|
||||
}
|
||||
return offset;
|
||||
}
|
||||
*/
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_8063524C.s")
|
||||
|
||||
typedef struct {
|
||||
s32 unk0; // TODO: proper members
|
||||
} Struct80635548_unk24;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
s32 unk1C;
|
||||
u8 unk20;
|
||||
u8 unk21;
|
||||
u8 unk22;
|
||||
u8 unk23;
|
||||
Struct80635548_unk24 *unk24[1]; // TODO: How many?
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
s32 unk30;
|
||||
void *unk34[1]; // TODO: How many?
|
||||
} Struct80635548;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80635468.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80635548.s")
|
||||
/*
|
||||
// TODO: Hmm
|
||||
void func_80635468(Struct80635548_unk24 *arg0, Struct80635548 *arg1) {
|
||||
s16 temp_a1;
|
||||
s32 i;
|
||||
s32 var_v0;
|
||||
void *var_s2;
|
||||
|
||||
var_s2 = arg0->unk70 + arg0 + 4;
|
||||
if (*(arg0->unk6C + arg0) != 0) {
|
||||
var_v0 = 7;
|
||||
} else {
|
||||
var_v0 = 0x19;
|
||||
}
|
||||
for (i = 0; i < arg1->unk20; i++) {
|
||||
arg1->unk24[i] = getPointerTableFile(var_v0, var_s2->unk0, 1, 0);
|
||||
temp_a1 = var_s2->unk2;
|
||||
if (temp_a1 != -1) {
|
||||
arg1->unk34[i] = getPointerTableFile(var_v0, temp_a1, 1, 0);
|
||||
} else {
|
||||
arg1->unk34[i] = NULL;
|
||||
}
|
||||
var_s2 += 0x30;
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
void func_80635548(s32 arg0, Struct80635548 *arg1) {
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < arg1->unk20; i++) {
|
||||
arg1->unk24[i] = 0;
|
||||
arg1->unk34[i] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
extern s32 D_80747D70;
|
||||
|
||||
void func_806355DC(s32 arg0, u8 arg1);
|
||||
|
||||
void func_80635588(void) {
|
||||
s32 temp_s1;
|
||||
s32 i;
|
||||
@ -519,14 +606,106 @@ void func_80635588(void) {
|
||||
func_80659350();
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_806355DC.s")
|
||||
void func_80605380(s16);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_806357F8.s")
|
||||
void func_8063DE68(void*);
|
||||
void func_8072F09C(s32 arg0);
|
||||
void func_806645B8(s16 arg0);
|
||||
|
||||
void func_806348B4(void *arg0);
|
||||
void func_8066C904(void *arg0);
|
||||
|
||||
Chunk14 *func_80630588(Chunk14 *arg0, s32 arg1, u8 arg2, u8 *arg3);
|
||||
|
||||
void func_806338B4(void *arg0);
|
||||
void func_8064F804(void *arg0);
|
||||
|
||||
void func_806593C8(s32 arg0, s32 arg1);
|
||||
void func_80636074(ObjectModel2 *arg0);
|
||||
|
||||
void func_806355DC(s32 arg0, u8 arg1) {
|
||||
s16 sp36;
|
||||
s16 sp34;
|
||||
u8 sp33;
|
||||
|
||||
if (arg1 == 1) {
|
||||
arg0 = func_80659470(arg0);
|
||||
}
|
||||
func_8062D2AC(D_807F6000[arg0].model_pointer, &sp34, 0);
|
||||
func_80630588(0, D_807F6000[arg0].model_pointer, 2, &sp33);
|
||||
func_8066C904(&D_807F6000[arg0].unk28);
|
||||
func_806348B4(&D_807F6000[arg0].unk48);
|
||||
func_80633570(D_807F6000[arg0].unk70);
|
||||
func_806338B4(D_807F6000[arg0].unk74);
|
||||
func_8064F804(D_807F6000[arg0].unk78);
|
||||
func_80636074(&D_807F6000[arg0]);
|
||||
if (D_807F6000[arg0].unk7C != NULL) {
|
||||
func_8063DE68(D_807F6000[arg0].unk7C);
|
||||
}
|
||||
D_807F6240[D_807F6000[arg0].unk8A] = -1;
|
||||
func_806645B8(D_807F6000[arg0].unk88);
|
||||
sp36 = D_807F6000[arg0].unk88;
|
||||
func_806594C8(sp36);
|
||||
func_8072F09C(sp36);
|
||||
if (D_807F6000[arg0].unk7C != NULL) {
|
||||
if (D_807F6000[arg0].unk7C->unk10 != -1) {
|
||||
func_80605380(D_807F6000[arg0].unk7C->unk10);
|
||||
}
|
||||
if (D_807F6000[arg0].unk7C->unk12 != -1) {
|
||||
func_80605380( D_807F6000[arg0].unk7C->unk12);
|
||||
}
|
||||
}
|
||||
if ((arg0 + 1) != D_80747D70) {
|
||||
func_806593C8(D_807F6000[D_80747D70 - 1].unk88, arg0);
|
||||
}
|
||||
memcpy(&D_807F6000[arg0], &D_807F6000[D_80747D70 - 1], sizeof(ObjectModel2));
|
||||
D_80747D70 -= 1;
|
||||
}
|
||||
|
||||
void func_806357F8(s32 arg0, f32 *arg1, f32 *arg2, f32 *arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7, f32 *arg8, u8 arg9) {
|
||||
if (arg9 == 1) {
|
||||
arg0 = func_80659470(arg0);
|
||||
}
|
||||
*arg1 = D_807F6000[arg0].x_position;
|
||||
*arg2 = D_807F6000[arg0].y_position;
|
||||
*arg3 = D_807F6000[arg0].z_position;
|
||||
*arg4 = D_807F6000[arg0].x_rotation;
|
||||
*arg5 = D_807F6000[arg0].y_rotation;
|
||||
*arg6 = D_807F6000[arg0].z_rotation;
|
||||
*arg7 = D_807F6000[arg0].hitbox_scale;
|
||||
*arg8 = D_807F6000[arg0].unk1C;
|
||||
}
|
||||
|
||||
// Jumptable
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_806358E8.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80635EF0.s")
|
||||
|
||||
extern u16 D_807FBB34;
|
||||
|
||||
/*
|
||||
// TODO: Small stack problem and regalloc
|
||||
s32 func_80635EF0(f32 arg0, f32 arg1, f32 arg2, s16 arg3, s16 arg4, s16 arg5, u16 arg6) {
|
||||
Actor *temp_a2;
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < D_807FBB34; i++) {
|
||||
temp_a2 = D_807FB930[i].unk0;
|
||||
if (temp_a2->interactable & arg6) {
|
||||
if ((arg0 - arg3) <= temp_a2->x_position
|
||||
&& (arg1 - arg4) <= temp_a2->y_position
|
||||
&& (arg2 - arg5) <= temp_a2->z_position
|
||||
&& temp_a2->x_position <= (arg3 + arg0)
|
||||
&& temp_a2->y_position <= (arg4 + arg1)
|
||||
&& temp_a2->z_position <= (arg5 + arg2)) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
*/
|
||||
|
||||
void func_80636014(s32 arg0, u8 arg1, u8 arg2) {
|
||||
if (arg1 == 1) {
|
||||
arg0 = func_80659470(arg0);
|
||||
@ -534,9 +713,78 @@ void func_80636014(s32 arg0, u8 arg1, u8 arg2) {
|
||||
func_8062D094(D_807F6000[arg0].model_pointer, arg2);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80636074.s")
|
||||
void func_80636380(s32 arg0, Struct80635548 *arg1);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80636164.s")
|
||||
void func_80636074(ObjectModel2 *arg0) {
|
||||
Model2Model50_B8 *var_s0;
|
||||
Model2Model50_B8 *temp_a0_3;
|
||||
Model2Model54_BC *sp24;
|
||||
s32 temp_a0;
|
||||
|
||||
switch (arg0->unk86) {
|
||||
case 2:
|
||||
var_s0 = arg0->model_pointer->unk50;
|
||||
sp24 = arg0->model_pointer->unk54;
|
||||
func_80636380(arg0->unk24, arg0->model_pointer);
|
||||
break;
|
||||
case 1:
|
||||
var_s0 = arg0->model_pointer->unkB8;
|
||||
sp24 = arg0->model_pointer->unkBC;
|
||||
func_806365D0(arg0, arg0->unk24, arg0->model_pointer);
|
||||
break;
|
||||
}
|
||||
while (var_s0 != NULL) {
|
||||
temp_a0 = var_s0->unk3C;
|
||||
if (temp_a0 != 0) {
|
||||
func_8066B434(temp_a0, 0x9DB, 7);
|
||||
}
|
||||
temp_a0 = var_s0->unk40;
|
||||
if (temp_a0 != 0) {
|
||||
func_8066B434(temp_a0, 0x9DC, 7);
|
||||
}
|
||||
temp_a0_3 = var_s0;
|
||||
var_s0 = var_s0->next;
|
||||
func_8061130C(temp_a0_3);
|
||||
}
|
||||
if (sp24 != NULL) {
|
||||
func_8066B434(sp24->unk0, 0x9E5, 7);
|
||||
func_8061130C(sp24);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80636164(Model2Model *arg0, u8 arg1) {
|
||||
Model2Model50_B8 *temp_a0;
|
||||
Model2Model50_B8 *var_s0;
|
||||
|
||||
switch (arg1) {
|
||||
case 2:
|
||||
var_s0 = arg0->unk50;
|
||||
break;
|
||||
case 1:
|
||||
var_s0 = arg0->unkB8;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
||||
while (var_s0 != NULL) {
|
||||
temp_a0 = var_s0->unk3C;
|
||||
if (temp_a0 != NULL) {
|
||||
if (var_s0->unkD0 == 0) {
|
||||
func_8066B434(temp_a0, 0xA09, 7);
|
||||
var_s0->unk3C = NULL;
|
||||
}
|
||||
}
|
||||
temp_a0 = var_s0->unk40;
|
||||
if (temp_a0 != NULL) {
|
||||
if (var_s0->unkD0 == 0) {
|
||||
func_8066B434(temp_a0, 0xA0E, 7);
|
||||
var_s0->unk40 = NULL;
|
||||
}
|
||||
}
|
||||
var_s0 = var_s0->next;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_36880/func_80636210.s")
|
||||
|
||||
@ -568,43 +816,18 @@ void func_806362C4(s32 arg0, u8 arg1) {
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: Any overlap with documented structs?
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
s32 unk1C;
|
||||
u8 unk20;
|
||||
u8 unk21;
|
||||
s16 unk22;
|
||||
void *unk24;
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
s32 unk30;
|
||||
void *unk34;
|
||||
} Struct80636380;
|
||||
void func_8061134C(void*);
|
||||
|
||||
void func_80636380(s32 arg0, Struct80636380 *arg1) {
|
||||
Struct80636380 *phi_s0;
|
||||
void func_80636380(s32 arg0, Struct80635548 *arg1) {
|
||||
s32 i;
|
||||
|
||||
phi_s0 = arg1;
|
||||
i = 0;
|
||||
while (i < arg1->unk20) {
|
||||
if (phi_s0->unk24 != 0) {
|
||||
func_8066B434(phi_s0->unk24, 0xA69, 7);
|
||||
for (i = 0; i < arg1->unk20; i++) {
|
||||
if (arg1->unk24[i] != 0) {
|
||||
func_8066B434(arg1->unk24[i], 0xA69, 7);
|
||||
}
|
||||
if (phi_s0->unk34 != 0) {
|
||||
func_8066B434(phi_s0->unk34, 0xA6A, 7);
|
||||
if (arg1->unk34[i] != 0) {
|
||||
func_8066B434(arg1->unk34[i], 0xA6A, 7);
|
||||
}
|
||||
// TODO: Not good at all.
|
||||
// I think arg1 is an array of pointers
|
||||
((s32)phi_s0) += 4;
|
||||
i++;
|
||||
}
|
||||
func_8066B434(arg0, 0xA6E, 7);
|
||||
func_8061134C(arg1->unk1C);
|
||||
|
@ -8,17 +8,12 @@
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_54150/func_8064F6F8.s")
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
} GlobalASMStruct9;
|
||||
|
||||
void func_80650684(GlobalASMStruct9*);
|
||||
//display list struct ? idk
|
||||
void func_8064F804(GlobalASMStruct9 *arg0) {
|
||||
void func_80650684(OM2_unk78*);
|
||||
void func_8064F804(OM2_unk78 *arg0) {
|
||||
if (arg0) {
|
||||
func_8061134C(arg0->unk0);
|
||||
func_8061134C(arg0->unk4);
|
||||
// TODO: Hmm...
|
||||
func_8061134C(*((s32*)&arg0->unk0));
|
||||
func_8061134C(*((s32*)&arg0->unk4));
|
||||
func_80650684(arg0);
|
||||
func_8061130C(arg0);
|
||||
}
|
||||
@ -40,7 +35,7 @@ void func_8064F954(s32 arg0) {
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_54150/func_806500E0.s")
|
||||
|
||||
typedef struct {
|
||||
GlobalASMStruct9* unk0; // Used
|
||||
OM2_unk78* unk0; // Used
|
||||
void *unk4; // TODO: Which struct?
|
||||
void *unk8; // TODO: Which struct?
|
||||
u8 unkC; // Used
|
||||
@ -60,7 +55,7 @@ void func_8065051C(void) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_8065054C(GlobalASMStruct9 *arg0, void *arg1, void *arg2) {
|
||||
void func_8065054C(OM2_unk78 *arg0, void *arg1, void *arg2) {
|
||||
s32 found = FALSE;
|
||||
s32 i = 0;
|
||||
|
||||
@ -81,7 +76,7 @@ void func_8065054C(GlobalASMStruct9 *arg0, void *arg1, void *arg2) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_806505F0(GlobalASMStruct9 *arg0) {
|
||||
void func_806505F0(OM2_unk78 *arg0) {
|
||||
s32 i;
|
||||
for (i = 0; i < 0x28; i++) {
|
||||
if (D_807F6960[i].unk0 && arg0 == D_807F6960[i].unk8) {
|
||||
@ -90,7 +85,7 @@ void func_806505F0(GlobalASMStruct9 *arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_80650684(GlobalASMStruct9 *arg0) {
|
||||
void func_80650684(OM2_unk78 *arg0) {
|
||||
s32 i;
|
||||
for (i = 0; i < 0x28; i++) {
|
||||
if (arg0 == D_807F6960[i].unk0) {
|
||||
@ -99,7 +94,7 @@ void func_80650684(GlobalASMStruct9 *arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_806506E8(GlobalASMStruct9 *arg0) {
|
||||
void func_806506E8(OM2_unk78 *arg0) {
|
||||
s32 i;
|
||||
for (i = 0; i < 0x28; i++) {
|
||||
if (arg0 == D_807F6960[i].unk0 && D_807F6960[i].unkC == D_807444FC) {
|
||||
|
@ -1,15 +1,6 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
|
||||
|
||||
typedef struct global_asm_struct_83 GlobalASMStruct83;
|
||||
struct global_asm_struct_83 {
|
||||
Actor* unk0;
|
||||
u32 unk4;
|
||||
Actor* unk8;
|
||||
GlobalASMStruct83 *next;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
s16 min_x; // 0
|
||||
s16 min_y; // 2
|
||||
|
Loading…
x
Reference in New Issue
Block a user