Decompile overlay 1 (Part 9) (#109)

This commit is contained in:
Yanis
2026-07-15 21:53:02 +02:00
committed by GitHub
parent 96874ba24e
commit 54b4c97c38
14 changed files with 89 additions and 43 deletions
@@ -96,6 +96,7 @@ src/001_SceneInit/UnkStruct_027e0cdc_001.cpp:
src/001_SceneInit/Player/PlayerActorBase_001.cpp:
complete
.text start:0x020bc794 end:0x020bc99c
.rodata start:0x020c264c end:0x020c274c
src/001_SceneInit/Player/PlayerLinkActor_001.cpp:
complete
@@ -172,6 +173,7 @@ src/001_SceneInit/PassengerManager_001.cpp:
src/001_SceneInit/UnkStruct_027e0cf8_08_00_001.cpp:
complete
.text start:0x020bfa50 end:0x020bfcc0
.rodata start:0x020c274c end:0x020c276c
src/001_SceneInit/UnkStruct_ov020_020e8544_001.cpp:
complete
@@ -180,13 +182,16 @@ src/001_SceneInit/UnkStruct_ov020_020e8544_001.cpp:
src/001_SceneInit/code_020bfdd0.cpp:
complete
.text start:0x020bfdd0 end:0x020bfeec
.bss start:0x020c46f4 end:0x020c46f8
src/001_SceneInit/code_020bfeec.cpp:
complete
.text start:0x020bfeec end:0x020bff74
.bss start:0x020c46f8 end:0x020c46fc
src/001_SceneInit/Game/AdventureModeManager_001.cpp:
.text start:0x020bff74 end:0x020c0944
.rodata start:0x020c276c end:0x020c280c
src/001_SceneInit/Game/GameModeAdventure_001.cpp:
complete
@@ -195,3 +200,7 @@ src/001_SceneInit/Game/GameModeAdventure_001.cpp:
src/001_SceneInit/code_020c099c.cpp:
complete
.text start:0x020c099c end:0x020c0a24
.bss start:0x020c46fc end:0x020c4700
.init start:0x020c28f0 end:0x020c2900
.ctor start:0x020c2908 end:0x020c290c
.data start:0x020c2fd4 end:0x020c2fe0
@@ -2326,7 +2326,6 @@ from:0x020c111c kind:load to:0x020c22ac module:overlay(1)
from:0x020c1590 kind:load to:0x020c4701 module:overlay(1)
from:0x020c1608 kind:load to:0x020c4701 module:overlay(1)
from:0x020c1680 kind:load to:0x020c4701 module:overlay(1)
from:0x020c168c kind:load to:0x020c273c module:overlay(1)
from:0x020c16f8 kind:load to:0x020c4701 module:overlay(1)
from:0x020c1718 kind:load to:0x020c1528 add:0x1400 module:overlay(1)
from:0x020c18a4 kind:load to:0x020c4700 module:overlay(1)
+12 -12
View File
@@ -497,20 +497,20 @@ data_ov001_020c25fc kind:data(any) addr:0x020c25fc
data_ov001_020c2624 kind:data(any) addr:0x020c2624 local
data_ov001_020c262e kind:data(any) addr:0x020c262e local
data_ov001_020c2638 kind:data(any) addr:0x020c2638 local
data_ov001_020c264c kind:data(any) addr:0x020c264c
data_ov001_020c26bc kind:data(any) addr:0x020c26bc
data_ov001_020c273c kind:data(any) addr:0x020c273c
data_ov001_020c2750 kind:data(any) addr:0x020c2750
data_ov001_020c275e kind:data(any) addr:0x020c275e
data_ov001_020c264c kind:data(any) addr:0x020c264c local
data_ov001_020c26bc kind:data(any) addr:0x020c26bc local
data_ov001_020c274c kind:data(any) addr:0x020c274c local
data_ov001_020c2750 kind:data(any) addr:0x020c2750 local
data_ov001_020c275e kind:data(any) addr:0x020c275e local
data_ov001_020c276c kind:data(any) addr:0x020c276c
data_ov001_020c27a8 kind:data(any) addr:0x020c27a8
data_ov001_020c280c kind:data(any) addr:0x020c280c
bad_mac_addr kind:data(any) addr:0x020c280c
__sinit_CourseList.cpp kind:function(thumb,size=0x24) addr:0x020c2814 local
__sinit_UnkStruct_027e0cd8_0C_001.cpp kind:function(thumb,size=0xb8) addr:0x020c2838
__sinit_ov001_020c28f0 kind:function(thumb,size=0x10) addr:0x020c28f0
__sinit_code_020c099c.cpp kind:function(thumb,size=0x10) addr:0x020c28f0 local
.p__sinit_CourseList.cpp kind:data(word) addr:0x020c2900 local
.p__sinit_UnkStruct_027e0cd8_0C_001.cpp kind:data(word) addr:0x020c2904
.p__sinit_ov001_020c28f0 kind:data(word) addr:0x020c2908
.p__sinit_code_020c099c.cpp kind:data(word) addr:0x020c2908 local
.p__sinit_ov001_020c1104 kind:data(word) addr:0x020c290c local
.p__sinit_ov001_020c1708 kind:data(word) addr:0x020c2910 local
.p__sinit_ov001_020c19c4 kind:data(word) addr:0x020c2914 local
@@ -627,13 +627,13 @@ data_ov001_020c2f28 kind:data(any) addr:0x020c2f28 local
@17 kind:data(byte[0x5]) addr:0x020c2fac local
@18 kind:data(byte[0x10]) addr:0x020c2fb4 local
_ZTV21UnkStruct_027e0cec_18 kind:data(any) addr:0x020c2fc4
data_ov001_020c2fd4 kind:data(any) addr:0x020c2fd4
data_ov001_020c2fd4 kind:data(byte[4]) addr:0x020c2fd4 local
_ZGVN14StaticInstanceI16CourseInitBinaryE9sInstanceE kind:bss addr:0x020c2fe0
_ZN14StaticInstanceI16CourseInitBinaryE9sInstanceE kind:bss addr:0x020c2fe4
@4613 kind:bss addr:0x020c40e8 local
data_ov001_020c40f4 kind:bss addr:0x020c40f4 local
data_ov001_020c46f4 kind:bss addr:0x020c46f4
data_ov001_020c46f8 kind:bss addr:0x020c46f8
data_ov001_020c46fc kind:bss addr:0x020c46fc
data_ov001_020c46f4 kind:bss addr:0x020c46f4 local
data_ov001_020c46f8 kind:bss addr:0x020c46f8 local
data_ov001_020c46fc kind:bss addr:0x020c46fc local
data_ov001_020c4700 kind:bss addr:0x020c4700
data_ov001_020c4701 kind:bss addr:0x020c4701
@@ -96,6 +96,7 @@ src/001_SceneInit/UnkStruct_027e0cdc_001.cpp:
src/001_SceneInit/Player/PlayerActorBase_001.cpp:
complete
.text start:0x020bdfdc end:0x020be1e4
.rodata start:0x020c3ea0 end:0x020c3fa0
src/001_SceneInit/Player/PlayerLinkActor_001.cpp:
complete
@@ -172,6 +173,7 @@ src/001_SceneInit/PassengerManager_001.cpp:
src/001_SceneInit/UnkStruct_027e0cf8_08_00_001.cpp:
complete
.text start:0x020c12a4 end:0x020c1514
.rodata start:0x020c3fa0 end:0x020c3fc0
src/001_SceneInit/UnkStruct_ov020_020e8544_001.cpp:
complete
@@ -180,13 +182,16 @@ src/001_SceneInit/UnkStruct_ov020_020e8544_001.cpp:
src/001_SceneInit/code_020bfdd0.cpp:
complete
.text start:0x020c1624 end:0x020c1740
.bss start:0x020c5f34 end:0x020c5f38
src/001_SceneInit/code_020bfeec.cpp:
complete
.text start:0x020c1740 end:0x020c17c8
.bss start:0x020c5f38 end:0x020c5f3c
src/001_SceneInit/Game/AdventureModeManager_001.cpp:
.text start:0x020c17c8 end:0x020c2198
.rodata start:0x020c3fc0 end:0x020c4060
src/001_SceneInit/Game/GameModeAdventure_001.cpp:
complete
@@ -195,3 +200,7 @@ src/001_SceneInit/Game/GameModeAdventure_001.cpp:
src/001_SceneInit/code_020c099c.cpp:
complete
.text start:0x020c21f0 end:0x020c2278
.bss start:0x020c5f3c end:0x020c5f40
.init start:0x020c4144 end:0x020c4154
.ctor start:0x020c415c end:0x020c4160
.data start:0x020c4814 end:0x020c4818
-4
View File
@@ -2319,7 +2319,6 @@ from:0x020c226c kind:load to:0x020c21f1 module:overlay(1)
from:0x020c2270 kind:load to:0x020c2215 module:overlay(1)
from:0x020c2274 kind:load to:0x020c5f3c module:overlay(1)
from:0x020c2498 kind:load to:0x020c417c module:overlays(2,4)
from:0x020c254c kind:load to:0x020c4818 module:overlay(1)
from:0x020c26f0 kind:load to:0x020c5f41 module:overlay(1)
from:0x020c2768 kind:load to:0x020c5f41 module:overlay(1)
from:0x020c27e0 kind:load to:0x020c5f41 module:overlay(1)
@@ -2327,11 +2326,9 @@ from:0x020c2858 kind:load to:0x020c5f41 module:overlay(1)
from:0x020c28d0 kind:load to:0x020c5f41 module:overlay(1)
from:0x020c2948 kind:load to:0x020c5f41 module:overlay(1)
from:0x020c2970 kind:load to:0x020c3b00 module:overlay(1)
from:0x020c2b8c kind:load to:0x020c4818 module:overlay(1)
from:0x020c2de4 kind:load to:0x020c5f41 module:overlay(1)
from:0x020c2e5c kind:load to:0x020c5f41 module:overlay(1)
from:0x020c2ed4 kind:load to:0x020c5f41 module:overlay(1)
from:0x020c2ee0 kind:load to:0x020c3f90 module:overlay(1)
from:0x020c2f4c kind:load to:0x020c5f41 module:overlay(1)
from:0x020c2f6c kind:load to:0x020c417c module:overlays(2,4)
from:0x020c30f8 kind:load to:0x020c5f40 module:overlay(1)
@@ -2353,7 +2350,6 @@ from:0x020c394c kind:load to:0x020c5f41 module:overlay(1)
from:0x020c3954 kind:load to:0x020d3b2a module:overlay(19)
from:0x020c39c4 kind:load to:0x020c5f41 module:overlay(1)
from:0x020c39cc kind:load to:0x020d3b2a module:overlay(19)
from:0x020c39fc kind:load to:0x020c4818 module:overlay(1)
from:0x020c3de0 kind:load to:0x020c738c module:overlay(25)
from:0x020c3e00 kind:load to:0x020c7398 module:overlay(25)
from:0x020c3e08 kind:load to:0x020c7398 module:overlay(25)
+12 -13
View File
@@ -497,20 +497,20 @@ data_ov001_020c25fc kind:data(any) addr:0x020c3e50
data_ov001_020c2624 kind:data(any) addr:0x020c3e78 local
data_ov001_020c262e kind:data(any) addr:0x020c3e82 local
data_ov001_020c2638 kind:data(any) addr:0x020c3e8c local
data_ov001_020c264c kind:data(any) addr:0x020c3ea0
data_ov001_020c26bc kind:data(any) addr:0x020c3f10
data_ov001_020c3f90 kind:data(any) addr:0x020c3f90
data_ov001_020c2750 kind:data(any) addr:0x020c3fa4
data_ov001_020c275e kind:data(any) addr:0x020c3fb2
data_ov001_020c264c kind:data(any) addr:0x020c3ea0 local
data_ov001_020c26bc kind:data(any) addr:0x020c3f10 local
data_ov001_020c274c kind:data(any) addr:0x020c3fa0 local
data_ov001_020c2750 kind:data(any) addr:0x020c3fa4 local
data_ov001_020c275e kind:data(any) addr:0x020c3fb2 local
data_ov001_020c276c kind:data(any) addr:0x020c3fc0
data_ov001_020c27a8 kind:data(any) addr:0x020c3ffc
data_ov001_020c4060 kind:data(any) addr:0x020c4060
bad_mac_addr kind:data(any) addr:0x020c4060
__sinit_CourseList.cpp kind:function(thumb,size=0x24) addr:0x020c4068 local
__sinit_UnkStruct_027e0cd8_0C_001.cpp kind:function(thumb,size=0xb8) addr:0x020c408c
__sinit_ov001_020c4144 kind:function(thumb,size=0x10) addr:0x020c4144
__sinit_code_020c099c.cpp kind:function(thumb,size=0x10) addr:0x020c4144 local
.p__sinit_CourseList.cpp kind:data(word) addr:0x020c4154 local
.p__sinit_UnkStruct_027e0cd8_0C_001.cpp kind:data(word) addr:0x020c4158
.p__sinit_ov001_020c4144 kind:data(word) addr:0x020c415c
.p__sinit_code_020c099c.cpp kind:data(word) addr:0x020c415c local
.p__sinit_ov001_020c2958 kind:data(word) addr:0x020c4160 local
.p__sinit_ov001_020c2f5c kind:data(word) addr:0x020c4164 local
.p__sinit_ov001_020c3218 kind:data(word) addr:0x020c4168 local
@@ -627,14 +627,13 @@ data_ov001_020c2f28 kind:data(any) addr:0x020c4768 local
@17 kind:data(byte[0x5]) addr:0x020c47ec local
@18 kind:data(byte[0x10]) addr:0x020c47f4 local
_ZTV21UnkStruct_027e0cec_18 kind:data(any) addr:0x020c4804
data_ov001_020c4814 kind:data(any) addr:0x020c4814
data_ov001_020c4818 kind:data(any) addr:0x020c4818
data_ov001_020c2fd4 kind:data(byte[4]) addr:0x020c4814 local
_ZGVN14StaticInstanceI16CourseInitBinaryE9sInstanceE kind:bss addr:0x020c4820
_ZN14StaticInstanceI16CourseInitBinaryE9sInstanceE kind:bss addr:0x020c4824
@4613 kind:bss addr:0x020c5928 local
data_ov001_020c40f4 kind:bss addr:0x020c5934 local
data_ov001_020c46f4 kind:bss addr:0x020c5f34
data_ov001_020c46f8 kind:bss addr:0x020c5f38
data_ov001_020c46fc kind:bss addr:0x020c5f3c
data_ov001_020c46f4 kind:bss addr:0x020c5f34 local
data_ov001_020c46f8 kind:bss addr:0x020c5f38 local
data_ov001_020c46fc kind:bss addr:0x020c5f3c local
data_ov001_020c5f40 kind:bss addr:0x020c5f40
data_ov001_020c5f41 kind:bss addr:0x020c5f41
-2
View File
@@ -16,8 +16,6 @@ public:
/* 00 */ virtual ~UnkStruct_ov001_020c46fc();
};
extern UnkStruct_ov001_020c46fc *data_ov001_020c46fc;
class GameModeDownloadPlay : public GameModeBase {
public:
/* 00 (base) */
@@ -47,8 +47,6 @@ public:
/* 0C */ virtual void vfunc_0C() override;
};
extern UnkStruct_ov001_020c46f4_Base *data_ov001_020c46f4;
class UnkStruct_ov023_020f1d94 {
public:
/* 00 */ unk32 mUnk_00;
@@ -17,8 +17,17 @@
extern "C" void *func_ov000_02066294();
extern s16 data_ov001_020c27a8;
extern s16 data_ov001_020c276c;
static const s16 data_ov001_020c27a8[] = {
0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0009, 0x000A, 0x000B, 0x000C, 0x000D, 0x000E,
0x000F, 0x0010, 0x0011, 0x0012, 0x0014, 0x0015, 0x0018, 0x001C, 0x0019, 0x001A, 0x001D, 0x001E, 0x001F,
0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, 0x0017, 0x0028, 0x003C, 0x0000, 0x0114,
0xEBAA, 0x4EB7, 0x4006, 0x3696, 0x5F01, 0x1F83, 0xE521, 0x335B, 0xE7EF, 0x197C, 0xE84B,
};
static const s16 data_ov001_020c276c[] = {
0x0000, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008, 0x000A, 0x000B, 0x000C, 0x000D, 0x000E, 0x0012, 0x0013,
0x0014, 0x0015, 0x0018, 0x0019, 0x001A, 0x001B, 0x001E, 0x001F, 0x0020, 0x0021, 0x0022, 0x0026, 0x0027, 0x003C, 0x0000,
};
GameModeManagerBase *AdventureModeManager::Create(UnkStruct_0204a110_Sub2 *param1) {
return new(HeapIndex_1) AdventureModeManager(param1);
@@ -101,7 +110,7 @@ void AdventureModeManager::vfunc_14() {
UnkStruct_027e0cf8::Create();
if (data_027e09a4->IsTrain()) {
this->mUnk_004.func_ov001_020bd734(&data_ov001_020c276c);
this->mUnk_004.func_ov001_020bd734(data_ov001_020c276c);
if (data_027e09a4->IsNotCutscene()) {
if (data_027e09a4->IsDarkRealm()) {
@@ -111,7 +120,7 @@ void AdventureModeManager::vfunc_14() {
}
}
} else {
this->mUnk_004.func_ov001_020bd734(&data_ov001_020c27a8);
this->mUnk_004.func_ov001_020bd734(data_ov001_020c27a8);
if (data_027e09a4->IsNotCutscene()) {
this->mUnk_004.func_0201c00c(0, 1);
}
@@ -4,11 +4,17 @@
#include "System/SysNew.hpp"
#include "Unknown/UnkStruct_027e09a4.hpp"
extern const char data_ov001_020c264c[][16];
extern const char data_ov001_020c26bc[][16];
extern "C" u16 *func_ov021_020ea868(int);
extern "C" void func_ov000_0205c584(void *, int, int);
static const char data_ov001_020c264c[][16] = {
"swA", "sheath", "swB", "sheathB", "belt", "cap", "body_all",
};
static const char data_ov001_020c26bc[][16] = {
"center", "body_chn", "waist_chn", "cl_podA", "cl_LhandA", "cl_RhandA", "LlegB_jnt", "RlegB_jnt", "head_jnt",
};
ModelRender_Derived4::ModelRender_Derived4(PlayerCharacter character, unk32 param2, G3d_Model *pModel,
G3d_BoneMtxStruct *pCacheJntAnm) :
ModelRender_Derived3(character, pModel),
@@ -1,7 +1,15 @@
#include "Unknown/UnkStruct_027e0cf8.hpp"
extern s16 data_ov001_020c2750[];
extern s16 data_ov001_020c275e[];
static const int data_ov001_020c274c[] = {0x0C};
DECOMP_FORCE(data_ov001_020c274c);
static const s16 data_ov001_020c2750[] = {
0, 0, -1, -1, -3, -4, -6,
};
static const s16 data_ov001_020c275e[] = {
-6, -4, -3, -2, -1, 0, 0,
};
UnkStruct_027e0cf8_08_00::UnkStruct_027e0cf8_08_00(u8 bgType) :
AdventureModeManager_1B8_Base(bgType, true, AdventureModeManager_1B8_Base_1C(0x00, 0x00, 0x100, 0xC0), true, true) {
+2
View File
@@ -5,6 +5,8 @@
#include <dsprot.h>
static UnkStruct_ov001_020c46f4_Base *data_ov001_020c46f4 = NULL;
void func_ov001_020bfdd0() {
if (data_ov001_020c46f4 != NULL) {
DELETE(data_ov001_020c46f4);
+1 -1
View File
@@ -3,7 +3,7 @@
#include <dsprot.h>
extern ActorUnkLBCK *data_ov001_020c46f8;
static ActorUnkLBCK *data_ov001_020c46f8 = NULL;
void func_ov001_020bfeec(void) {
data_ov001_020c46f8->func_ov000_020984d0();
+13
View File
@@ -3,6 +3,19 @@
#include <dsprot.h>
// probably not here but it's unused
class UnkStruct_ov001_020c2fd4 {
public:
/* 00 */ unk32 mUnk_00;
UnkStruct_ov001_020c2fd4() {
mUnk_00 = 0x00010005;
}
};
static const UnkStruct_ov001_020c2fd4 data_ov001_020c2fd4;
static UnkStruct_ov001_020c46fc *data_ov001_020c46fc = NULL;
void func_ov001_020c099c(void) {
data_ov001_020c46fc = new(HeapIndex_1) UnkStruct_ov001_020c46fc();
}