Merge pull request #349 from gamemasterplc/main

Decompile m431dll/main.c
This commit is contained in:
Liam Coleman 2024-06-13 12:16:31 -05:00 committed by GitHub
commit ba0c484ec7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 2404 additions and 100 deletions

View file

@ -94,81 +94,81 @@ fn_1_B4F8 = .text:0x0000B4F8; // type:function size:0x38
fn_1_B530 = .text:0x0000B530; // type:function size:0x28
_ctors = .ctors:0x00000000; // type:label scope:global data:4byte
_dtors = .dtors:0x00000000; // type:label scope:global data:4byte
lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float
lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float
lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float
lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 data:float
lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float
lbl_1_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float
lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float
lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 data:float
lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float
lbl_1_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float
lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float
lbl_1_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 data:float
lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float
lbl_1_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float
lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float
lbl_1_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 data:float
lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 data:double
lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 data:double
lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 data:double
lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float
lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 data:float
lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float
lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float
lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float
lbl_1_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 data:float
lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float
lbl_1_rodata_84 = .rodata:0x00000084; // type:object size:0x4 data:float
lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float
lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 data:double
lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float
lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 data:float
lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 data:float
lbl_1_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 data:float
lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 data:float
lbl_1_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 data:float
lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 data:double
lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 data:double
lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 data:float
lbl_1_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 data:float
lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 data:float
lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 data:double
lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 data:float
lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 data:float
lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 data:float
lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 data:float
lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 data:float
lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 data:float
lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 data:float
lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 data:float
lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 data:float
lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 data:double
lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 data:float
lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 data:float
lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x4 data:float
lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x4 data:float
lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 data:float
lbl_1_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 data:float
lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 data:float
lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 data:double
lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x1 data:byte
lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 data:float
lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 data:float
lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 data:float
lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 data:float
lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0x4 data:float
lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 data:float
lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 data:float
lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 data:float
lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 data:double
lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 data:float
lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 data:double
lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 data:double
lbl_1_rodata_178 = .rodata:0x00000178; // type:object size:0x4 data:float
lbl_1_rodata_17C = .rodata:0x0000017C; // type:object size:0x4 data:float
lbl_1_rodata_180 = .rodata:0x00000180; // type:object size:0x8 data:float
lbl_1_rodata_10 = .rodata:0x00000010; // type:object size:0x4 scope:local data:float
lbl_1_rodata_14 = .rodata:0x00000014; // type:object size:0x4 scope:local data:float
lbl_1_rodata_18 = .rodata:0x00000018; // type:object size:0x4 scope:local data:float
lbl_1_rodata_1C = .rodata:0x0000001C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_20 = .rodata:0x00000020; // type:object size:0x4 scope:local data:float
lbl_1_rodata_24 = .rodata:0x00000024; // type:object size:0x4 scope:local data:float
lbl_1_rodata_28 = .rodata:0x00000028; // type:object size:0x4 scope:local data:float
lbl_1_rodata_2C = .rodata:0x0000002C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_30 = .rodata:0x00000030; // type:object size:0x4 scope:local data:float
lbl_1_rodata_34 = .rodata:0x00000034; // type:object size:0x4 scope:local data:float
lbl_1_rodata_38 = .rodata:0x00000038; // type:object size:0x4 scope:local data:float
lbl_1_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local data:float
lbl_1_rodata_44 = .rodata:0x00000044; // type:object size:0x4 scope:local data:float
lbl_1_rodata_48 = .rodata:0x00000048; // type:object size:0x4 scope:local data:float
lbl_1_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_50 = .rodata:0x00000050; // type:object size:0x8 scope:local data:double
lbl_1_rodata_58 = .rodata:0x00000058; // type:object size:0x8 scope:local data:double
lbl_1_rodata_60 = .rodata:0x00000060; // type:object size:0x8 scope:local data:double
lbl_1_rodata_68 = .rodata:0x00000068; // type:object size:0x4 scope:local data:float
lbl_1_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_70 = .rodata:0x00000070; // type:object size:0x4 scope:local data:float
lbl_1_rodata_74 = .rodata:0x00000074; // type:object size:0x4 scope:local data:float
lbl_1_rodata_78 = .rodata:0x00000078; // type:object size:0x4 scope:local data:float
lbl_1_rodata_7C = .rodata:0x0000007C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_80 = .rodata:0x00000080; // type:object size:0x4 scope:local data:float
lbl_1_rodata_84 = .rodata:0x00000084; // type:object size:0x4 scope:local data:float
lbl_1_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local data:float
lbl_1_rodata_90 = .rodata:0x00000090; // type:object size:0x8 scope:local data:double
lbl_1_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local data:float
lbl_1_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 scope:local data:float
lbl_1_rodata_B0 = .rodata:0x000000B0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_B8 = .rodata:0x000000B8; // type:object size:0x8 scope:local data:double
lbl_1_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_D0 = .rodata:0x000000D0; // type:object size:0x8 scope:local data:double
lbl_1_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 scope:local data:float
lbl_1_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 scope:local data:float
lbl_1_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 scope:local data:float
lbl_1_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 scope:local data:float
lbl_1_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 scope:local data:float
lbl_1_rodata_100 = .rodata:0x00000100; // type:object size:0x8 scope:local data:double
lbl_1_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local data:float
lbl_1_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_110 = .rodata:0x00000110; // type:object size:0x4 scope:local data:float
lbl_1_rodata_114 = .rodata:0x00000114; // type:object size:0x4 scope:local data:float
lbl_1_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local data:float
lbl_1_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_120 = .rodata:0x00000120; // type:object size:0x4 scope:local data:float
lbl_1_rodata_128 = .rodata:0x00000128; // type:object size:0x8 scope:local data:double
lbl_1_rodata_130 = .rodata:0x00000130; // type:object size:0x1 scope:local data:byte
lbl_1_rodata_134 = .rodata:0x00000134; // type:object size:0x4 scope:local data:float
lbl_1_rodata_138 = .rodata:0x00000138; // type:object size:0x4 scope:local data:float
lbl_1_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_140 = .rodata:0x00000140; // type:object size:0x4 scope:local data:float
lbl_1_rodata_144 = .rodata:0x00000144; // type:object size:0x4 scope:local data:float
lbl_1_rodata_148 = .rodata:0x00000148; // type:object size:0x4 scope:local data:float
lbl_1_rodata_14C = .rodata:0x0000014C; // type:object size:0x4 scope:local data:float
lbl_1_rodata_150 = .rodata:0x00000150; // type:object size:0x4 scope:local data:float
lbl_1_rodata_158 = .rodata:0x00000158; // type:object size:0x8 scope:local data:double
lbl_1_rodata_160 = .rodata:0x00000160; // type:object size:0x4 scope:local data:float
lbl_1_rodata_168 = .rodata:0x00000168; // type:object size:0x8 scope:local data:double
lbl_1_rodata_170 = .rodata:0x00000170; // type:object size:0x8 scope:local data:double
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
@ -202,7 +202,8 @@ 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_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:0x10
lbl_1_data_18 = .data:0x00000018; // type:object size:0x4
lbl_1_data_1C = .data:0x0000001C; // type:object size:0xC
lbl_1_data_28 = .data:0x00000028; // type:object size:0xC
lbl_1_data_34 = .data:0x00000034; // type:object size:0xC
lbl_1_data_40 = .data:0x00000040; // type:object size:0xC
@ -214,12 +215,13 @@ lbl_1_data_114 = .data:0x00000114; // type:object size:0x10
lbl_1_data_124 = .data:0x00000124; // type:object size:0x10
lbl_1_data_134 = .data:0x00000134; // type:object size:0x14
lbl_1_data_148 = .data:0x00000148; // type:object size:0x14
lbl_1_data_15C = .data:0x0000015C; // type:object size:0x6 data:string
lbl_1_data_15C = .data:0x0000015C; // type:object size:0x6 scope:local data:string
lbl_1_data_162 = .data:0x00000162; // type:object size:0x2 data:2byte
lbl_1_data_164 = .data:0x00000164; // type:object size:0x10 data:4byte
lbl_1_data_174 = .data:0x00000174; // type:object size:0x10 data:string
lbl_1_data_184 = .data:0x00000184; // type:object size:0x26 data:string
lbl_1_data_1AA = .data:0x000001AA; // type:object size:0x24 data:string
lbl_1_data_164 = .data:0x00000164; // type:object size:0x4 data:4byte
lbl_1_data_168 = .data:0x00000168; // type:object size:0xC data:float
lbl_1_data_174 = .data:0x00000174; // type:object size:0x10 scope:local data:string
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_1F4 = .data:0x000001F4; // type:object size:0x20

View file

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

49
include/REL/m431Dll.h Normal file
View file

@ -0,0 +1,49 @@
#ifndef M431DLL_H
#define M431DLL_H
#include "game/object.h"
typedef struct bss_12C_inner {
Vec unk0;
float unkC;
s8 unk10;
} Bss12CInner;
typedef struct bss_12c_struct {
s16 unk0[2];
u8 unk4[0x8];
Vec unkC;
u8 unk18[4];
Bss12CInner unk1C[2];
u8 unk44[0xF0];
s16 unk134[2];
s16 unk138[2];
} Bss12CStruct;
typedef struct bss_61C_work {
u8 unk0[0x4];
s16 unk4;
s16 unk6[2];
s16 unkA;
u8 unkC[8];
struct bss_61C_work *unk14;
u8 unk18[0x46];
s16 unk5E[8];
s16 unk6E;
s16 unk70;
s16 unk72;
u8 unk74[0x44];
} Bss61CWork;
extern Bss12CStruct lbl_1_bss_12C[4];
extern omObjData *lbl_1_bss_61C[4];
extern float lbl_1_data_1D0;
void fn_1_7ABC(Process *objman);
s32 fn_1_7FB8(s16 arg0);
void fn_1_A7D0(s16 arg0);
void fn_1_A904(s16 arg0);
s32 fn_1_8474(s16 arg0);
#endif

View file

@ -49,7 +49,7 @@ void Hu3DDrawPreInit(void);
void Hu3DDraw(ModelData *arg0, Mtx arg1, Vec *arg2);
s32 ObjCullCheck(HsfData *arg0, HsfObject *arg1, Mtx arg2);
void Hu3DDrawPost(void);
void MakeDisplayList(s16 arg0, HsfData *arg1);
void MakeDisplayList(s16 arg0, u32 arg1);
HsfConstData *ObjConstantMake(HsfObject *arg0, u32 arg1);
void mtxTransCat(Mtx arg0, float arg1, float arg2, float arg3);
void mtxRotCat(Mtx arg0, float arg1, float arg2, float arg3);

View file

@ -32,8 +32,8 @@ typedef struct model_data {
u16 unk_26;
u16 unk_28[8];
s16 unk_38[8];
HsfData *unk_48;
HsfData *unk_4C;
u32 unk_48;
u32 unk_4C;
u32 attr;
u32 motion_attr;
Point3d unk_58;

2253
src/REL/m431Dll/main.c Normal file

File diff suppressed because it is too large Load diff

View file

@ -2375,14 +2375,14 @@ static void ObjDraw(HsfDrawObject *arg0) {
}
}
void MakeDisplayList(s16 arg0, HsfData *arg1) {
void MakeDisplayList(s16 arg0, u32 arg1) {
HsfData *temp_r31;
ModelData *var_r30;
temp_r31 = Hu3DData[arg0].hsfData;
var_r30 = &Hu3DData[arg0];
curModelID = arg0;
mallocNo = (u32) arg1;
mallocNo = arg1;
faceNumBuf = HuMemDirectMallocNum(HEAP_DATA, 0x800 * sizeof(u16), mallocNo);
MDObjCall(temp_r31, temp_r31->root);
HuMemDirectFree(faceNumBuf);

View file

@ -38,7 +38,7 @@ s32 shadowModelDrawF;
s16 Hu3DProjectionNum;
s16 Hu3DCameraNo;
s16 Hu3DCameraBit;
HsfData* Hu3DMallocNo;
u32 Hu3DMallocNo;
s16 Hu3DPauseF;
u16 Hu3DCameraExistF;
static u16 NoSyncF;
@ -343,11 +343,11 @@ s16 Hu3DModelCreate(void *arg0) {
return -1;
}
var_r31->hsfData = LoadHSF(arg0);
var_r31->unk_48 = Hu3DMallocNo = var_r31->hsfData;
var_r31->unk_48 = Hu3DMallocNo = (u32)var_r31->hsfData;
var_r31->attr = 0;
var_r31->motion_attr = 0;
var_r31->unk_02 = 0;
MakeDisplayList(var_r30, (HsfData* ) var_r31->unk_48);
MakeDisplayList(var_r30, var_r31->unk_48);
var_r31->unk_68 = 1.0f;
for (i = 0; i < 4; i++) {
var_r31->unk_10[i] = -1;
@ -424,10 +424,10 @@ s16 Hu3DModelLink(s16 arg0) {
return -1;
}
var_r31->unk_C8 = temp_r30->hsfData;
var_r31->hsfData = HuMemDirectMallocNum(HEAP_DATA, 0x80, (u32)var_r31->unk_4C);
var_r31->unk_4C = var_r31->hsfData;
var_r31->hsfData = HuMemDirectMallocNum(HEAP_DATA, 0x80, var_r31->unk_4C);
var_r31->unk_4C = (u32)var_r31->hsfData;
*var_r31->hsfData = *temp_r30->hsfData;
temp_r3_2 = Hu3DObjDuplicate(var_r31->hsfData, (u32)var_r31->unk_4C);
temp_r3_2 = Hu3DObjDuplicate(var_r31->hsfData, var_r31->unk_4C);
var_r31->hsfData->root = (HsfObject*)((u32)temp_r3_2 + ((u32)var_r31->hsfData->root - (u32)var_r31->hsfData->object));
var_r31->hsfData->object = temp_r3_2;
var_r31->unk_48 = temp_r30->unk_48;
@ -487,7 +487,7 @@ s16 Hu3DHookFuncCreate(ModelHookFunc hook) {
return -1;
}
var_r31->hook = hook;
var_r31->unk_48 = (HsfData *)(var_r29 + 10000);
var_r31->unk_48 = var_r29+10000;
var_r31->attr = 0x10;
var_r31->motion_attr = 0;
var_r31->pos.x = var_r31->pos.y = var_r31->pos.z = 0.0f;
@ -536,7 +536,7 @@ void Hu3DModelKill(s16 arg0) {
layerNum[temp_r31->layer] -= 1;
if ((temp_r31->attr & 0x10) != 0) {
HuMemDirectFreeNum(HEAP_DATA, (u32) temp_r31->unk_48);
HuMemDirectFreeNum(HEAP_DATA, temp_r31->unk_48);
if ((temp_r31->attr & 0x20) != 0) {
copy = temp_r31->unk_120;
HuSprAnimKill(copy->unk_44);
@ -551,14 +551,14 @@ void Hu3DModelKill(s16 arg0) {
if (temp_r31->unk_08 != -1) {
Hu3DMotionKill(temp_r31->unk_08);
}
HuMemDirectFreeNum(HEAP_DATA, (u32) temp_r31->unk_48);
HuMemDirectFreeNum(HEAP_DATA, temp_r31->unk_48);
temp_r31->hsfData = NULL;
return;
}
Hu3DAnimModelKill(arg0);
if (temp_r31->unk_24 != -1) {
HuMemDirectFree(temp_r31->hsfData);
HuMemDirectFreeNum(HEAP_DATA, (u32) temp_r31->unk_4C);
HuMemDirectFreeNum(HEAP_DATA, temp_r31->unk_4C);
var_r28 = temp_r31->unk_C8;
temp_r31->hsfData = var_r28;
}
@ -586,7 +586,7 @@ void Hu3DModelKill(s16 arg0) {
}
if (temp_r31->unk_20 != -1 && Hu3DMotionKill(temp_r31->unk_20) == 0) {
Hu3DMotion[temp_r31->unk_20].unk_02 = -1;
HuMemDirectFreeNum(HEAP_DATA, (u32) temp_r31->unk_48);
HuMemDirectFreeNum(HEAP_DATA, temp_r31->unk_48);
temp_r31->hsfData = NULL;
if (modelKillAllF == 0) {
HuMemDCFlush(HEAP_DATA);
@ -594,7 +594,7 @@ void Hu3DModelKill(s16 arg0) {
return;
}
HuMemDirectFree(temp_r31->hsfData);
HuMemDirectFreeNum(HEAP_DATA, (u32) temp_r31->unk_48);
HuMemDirectFreeNum(HEAP_DATA, temp_r31->unk_48);
for (i = 0; i < temp_r31->unk_26; i++) {
Hu3DGLightKill(temp_r31->unk_28[i]);
}
@ -2103,7 +2103,7 @@ void Hu3DMipMapSet(char* arg0, s16 arg1, s32 arg2, f32 arg8) {
for ( i = 0, var_r24 = i; i < temp_r3->bmpNum; i++, var_r30++) {
var_r24 += var_r30->dataSize;
}
var_r23 = HuMemDirectMallocNum(HEAP_DATA, var_r24, (u32)temp_r25->unk_48);
var_r23 = HuMemDirectMallocNum(HEAP_DATA, var_r24, temp_r25->unk_48);
temp_r22 = var_r23;
var_r30 = temp_r3->bmp;
temp_r31->data = temp_r22;