Decompile 018_StartUp overlay (#19)

* Decompile StartUp overlay (99%)

* jp delinks

* regression fix
This commit is contained in:
Yanis
2026-01-13 15:04:52 +01:00
committed by GitHub
parent 1713ffc43b
commit 76c1ec9acf
53 changed files with 2058 additions and 446 deletions
+3
View File
@@ -393,8 +393,11 @@ public:
void UnloadOverlaySetup();
void LoadEquipItem(ItemFlag equipId);
void func_02014994(unk32 param1);
};
extern OverlayManager gOverlayManager;
extern OverlayManager data_02049ba0;
extern OverlayId data_0203e0e8[OverlayIndex_COUNT];
extern char *data_02043c88[OverlayIndex_COUNT];
+2
View File
@@ -22,6 +22,8 @@ struct Random {
}
return (result >> 32) + min;
}
void Init();
};
extern Random gRandom;
+6
View File
@@ -4,7 +4,13 @@
class SysFault {
public:
/* 00 */ unk32 mUnk_00;
/* 04 */ unk8 mUnk_04;
/* 05 */ unk8 mUnk_05;
void func_020125a4(char *file, u16 line, char *msg, ...);
void func_ov018_020c4840();
};
extern SysFault data_02049984;
+46 -12
View File
@@ -17,24 +17,66 @@ enum HeapIndex_ {
HeapIndex_1 = 1,
HeapIndex_2 = 2,
HeapIndex_3 = 3,
HeapIndex_Max = 4
HeapIndex_4 = 4,
HeapIndex_5 = 5,
HeapIndex_6 = 6,
HeapIndex_7 = 7,
HeapIndex_8 = 8,
HeapIndex_Max = 9
};
class SysObject {
public:
static void operator delete(void *ptr);
static void operator delete[](void *ptr);
};
static void *operator new(unsigned long length, u32 id, u32 idLength = 4);
static void *operator new[](unsigned long length, u32 id, u32 idLength = 4);
class UnkStruct_02011e10_Sub1 {
public:
/* 00 */ UnkId mId;
/* 04 */ unk8 mUnk_04[0x28];
/* 04 */ unk32 mUnk_04;
/* 04 */ unk32 mUnk_08;
/* 04 */ unk32 mUnk_0C;
/* 04 */ unk32 mUnk_10;
/* 04 */ unk32 mUnk_14;
/* 04 */ unk32 mUnk_18;
/* 04 */ unk32 mUnk_1C;
/* 04 */ unk32 mUnk_20;
/* 04 */ unk32 mUnk_24;
/* 04 */ unk32 mUnk_28;
/* 2C */ unk8 mUnk_2C[0x60 - 0x2C];
};
class UnkStruct_02011e10 {
class UnkStruct_02011e10 : public SysObject {
public:
/* 00 */ UnkStruct_02011e10_Sub1 *mUnk_00[HeapIndex_Max];
/* 10 */ STRUCT_PAD(0x10, 0x60);
/* 24 */ unk32 mUnk_24[2];
/* 28 */ STRUCT_PAD(0x2C, 0x5C);
/* 5C */ unk32 mUnk_5C;
/* 60 */ unk32 mUnk_60;
/* 64 */ unk32 mUnk_64;
/* 68 */ unk32 mUnk_68;
/* 6C */ unk32 mUnk_6C;
/* 70 */ unk32 mUnk_70;
/* 74 */ unk32 mUnk_74;
/* 78 */ unk32 mUnk_78;
/* 7C */ unk8 mUnk_7C;
/* 7C */ unk8 mUnk_7D;
/* 7C */ unk8 mUnk_7E;
/* 7C */ unk8 mUnk_7F;
/* 80 */ unk8 mUnk_80;
/* 81 */ unk8 mUnk_81;
/* 82 */ unk8 mUnk_82;
/* 83 */ unk8 mUnk_83;
void func_02013014();
void func_02013070();
void func_ov018_020c4980();
void func_ov018_020c4a5c();
};
extern UnkStruct_02011e10 data_0204999c;
@@ -43,11 +85,3 @@ void *SysNew(UnkStruct_02011e10_Sub1 *param1, s32 length, s32 param3);
void SysDelete(void *ptr);
void *func_02011f10(s32 length);
void *func_02011f30(s32 length);
class SysObject {
public:
static void *operator new(unsigned long length, u32 id, u32 idLength = 4);
static void *operator new[](unsigned long length, u32 *id, u32 idLength = 4);
static void operator delete(void *ptr);
static void operator delete[](void *ptr);
};